@@ -136,6 +136,61 @@ service BigtableTableAdmin {
136136 };
137137 }
138138
139+ // Creates a new AuthorizedView in a table.
140+ rpc CreateAuthorizedView (CreateAuthorizedViewRequest )
141+ returns (google.longrunning.Operation ) {
142+ option (google.api.http ) = {
143+ post : "/v2/{parent=projects/*/instances/*/tables/*}/authorizedViews"
144+ body : "authorized_view"
145+ };
146+ option (google.api.method_signature ) =
147+ "parent,authorized_view,authorized_view_id" ;
148+ option (google.longrunning.operation_info ) = {
149+ response_type : "AuthorizedView"
150+ metadata_type : "CreateAuthorizedViewMetadata"
151+ };
152+ }
153+
154+ // Lists all AuthorizedViews from a specific table.
155+ rpc ListAuthorizedViews (ListAuthorizedViewsRequest )
156+ returns (ListAuthorizedViewsResponse ) {
157+ option (google.api.http ) = {
158+ get : "/v2/{parent=projects/*/instances/*/tables/*}/authorizedViews"
159+ };
160+ option (google.api.method_signature ) = "parent" ;
161+ }
162+
163+ // Gets information from a specified AuthorizedView.
164+ rpc GetAuthorizedView (GetAuthorizedViewRequest ) returns (AuthorizedView ) {
165+ option (google.api.http ) = {
166+ get : "/v2/{name=projects/*/instances/*/tables/*/authorizedViews/*}"
167+ };
168+ option (google.api.method_signature ) = "name" ;
169+ }
170+
171+ // Updates an AuthorizedView in a table.
172+ rpc UpdateAuthorizedView (UpdateAuthorizedViewRequest )
173+ returns (google.longrunning.Operation ) {
174+ option (google.api.http ) = {
175+ patch : "/v2/{authorized_view.name=projects/*/instances/*/tables/*/authorizedViews/*}"
176+ body : "authorized_view"
177+ };
178+ option (google.api.method_signature ) = "authorized_view,update_mask" ;
179+ option (google.longrunning.operation_info ) = {
180+ response_type : "AuthorizedView"
181+ metadata_type : "UpdateAuthorizedViewMetadata"
182+ };
183+ }
184+
185+ // Permanently deletes a specified AuthorizedView.
186+ rpc DeleteAuthorizedView (DeleteAuthorizedViewRequest )
187+ returns (google.protobuf.Empty ) {
188+ option (google.api.http ) = {
189+ delete : "/v2/{name=projects/*/instances/*/tables/*/authorizedViews/*}"
190+ };
191+ option (google.api.method_signature ) = "name" ;
192+ }
193+
139194 // Performs a series of column family modifications on the specified table.
140195 // Either all or none of the modifications will occur before this method
141196 // returns, but data requests received prior to that point may see a table
@@ -1194,3 +1249,158 @@ message CopyBackupMetadata {
11941249 // operation.
11951250 OperationProgress progress = 3 ;
11961251}
1252+
1253+ // The request for
1254+ // [CreateAuthorizedView][google.bigtable.admin.v2.BigtableTableAdmin.CreateAuthorizedView]
1255+ message CreateAuthorizedViewRequest {
1256+ // Required. This is the name of the table the AuthorizedView belongs to.
1257+ // Values are of the form
1258+ // `projects/{project}/instances/{instance}/tables/{table}`.
1259+ string parent = 1 [
1260+ (google.api.field_behavior ) = REQUIRED ,
1261+ (google.api.resource_reference ) = {
1262+ child_type : "bigtableadmin.googleapis.com/AuthorizedView"
1263+ }
1264+ ];
1265+
1266+ // Required. The id of the AuthorizedView to create. This AuthorizedView must
1267+ // not already exist. The `authorized_view_id` appended to `parent` forms the
1268+ // full AuthorizedView name of the form
1269+ // `projects/{project}/instances/{instance}/tables/{table}/authorizedView/{authorized_view}`.
1270+ string authorized_view_id = 2 [(google.api.field_behavior ) = REQUIRED ];
1271+
1272+ // Required. The AuthorizedView to create.
1273+ AuthorizedView authorized_view = 3 [(google.api.field_behavior ) = REQUIRED ];
1274+ }
1275+
1276+ // The metadata for the Operation returned by CreateAuthorizedView.
1277+ message CreateAuthorizedViewMetadata {
1278+ // The request that prompted the initiation of this CreateInstance operation.
1279+ CreateAuthorizedViewRequest original_request = 1 ;
1280+
1281+ // The time at which the original request was received.
1282+ google.protobuf.Timestamp request_time = 2 ;
1283+
1284+ // The time at which the operation failed or was completed successfully.
1285+ google.protobuf.Timestamp finish_time = 3 ;
1286+ }
1287+
1288+ // Request message for
1289+ // [google.bigtable.admin.v2.BigtableTableAdmin.ListAuthorizedViews][google.bigtable.admin.v2.BigtableTableAdmin.ListAuthorizedViews]
1290+ message ListAuthorizedViewsRequest {
1291+ // Required. The unique name of the table for which AuthorizedViews should be
1292+ // listed. Values are of the form
1293+ // `projects/{project}/instances/{instance}/tables/{table}`.
1294+ string parent = 1 [
1295+ (google.api.field_behavior ) = REQUIRED ,
1296+ (google.api.resource_reference ) = {
1297+ child_type : "bigtableadmin.googleapis.com/AuthorizedView"
1298+ }
1299+ ];
1300+
1301+ // Optional. Maximum number of results per page.
1302+ //
1303+ // A page_size of zero lets the server choose the number of items to return.
1304+ // A page_size which is strictly positive will return at most that many items.
1305+ // A negative page_size will cause an error.
1306+ //
1307+ // Following the first request, subsequent paginated calls are not required
1308+ // to pass a page_size. If a page_size is set in subsequent calls, it must
1309+ // match the page_size given in the first request.
1310+ int32 page_size = 2 [(google.api.field_behavior ) = OPTIONAL ];
1311+
1312+ // Optional. The value of `next_page_token` returned by a previous call.
1313+ string page_token = 3 [(google.api.field_behavior ) = OPTIONAL ];
1314+
1315+ // Optional. The resource_view to be applied to the returned views' fields.
1316+ // Default to NAME_ONLY.
1317+ AuthorizedView.ResponseView view = 4 [(google.api.field_behavior ) = OPTIONAL ];
1318+ }
1319+
1320+ // Response message for
1321+ // [google.bigtable.admin.v2.BigtableTableAdmin.ListAuthorizedViews][google.bigtable.admin.v2.BigtableTableAdmin.ListAuthorizedViews]
1322+ message ListAuthorizedViewsResponse {
1323+ // The AuthorizedViews present in the requested table.
1324+ repeated AuthorizedView authorized_views = 1 ;
1325+
1326+ // Set if not all tables could be returned in a single response.
1327+ // Pass this value to `page_token` in another request to get the next
1328+ // page of results.
1329+ string next_page_token = 2 ;
1330+ }
1331+
1332+ // Request message for
1333+ // [google.bigtable.admin.v2.BigtableTableAdmin.GetAuthorizedView][google.bigtable.admin.v2.BigtableTableAdmin.GetAuthorizedView]
1334+ message GetAuthorizedViewRequest {
1335+ // Required. The unique name of the requested AuthorizedView.
1336+ // Values are of the form
1337+ // `projects/{project}/instances/{instance}/tables/{table}/authorizedViews/{authorized_view}`.
1338+ string name = 1 [
1339+ (google.api.field_behavior ) = REQUIRED ,
1340+ (google.api.resource_reference ) = {
1341+ type : "bigtableadmin.googleapis.com/AuthorizedView"
1342+ }
1343+ ];
1344+
1345+ // Optional. The resource_view to be applied to the returned AuthorizedView's
1346+ // fields. Default to BASIC.
1347+ AuthorizedView.ResponseView view = 2 [(google.api.field_behavior ) = OPTIONAL ];
1348+ }
1349+
1350+ // The request for
1351+ // [UpdateAuthorizedView][google.bigtable.admin.v2.BigtableTableAdmin.UpdateAuthorizedView].
1352+ message UpdateAuthorizedViewRequest {
1353+ // Required. The AuthorizedView to update. The `name` in `authorized_view` is
1354+ // used to identify the AuthorizedView. AuthorizedView name must in this
1355+ // format
1356+ // projects/<project>/instances/<instance>/tables/<table>/authorizedViews/<authorized_view>
1357+ AuthorizedView authorized_view = 1 [(google.api.field_behavior ) = REQUIRED ];
1358+
1359+ // Optional. The list of fields to update.
1360+ // A mask specifying which fields in the AuthorizedView resource should be
1361+ // updated. This mask is relative to the AuthorizedView resource, not to the
1362+ // request message. A field will be overwritten if it is in the mask. If
1363+ // empty, all fields set in the request will be overwritten. A special value
1364+ // `*` means to overwrite all fields (including fields not set in the
1365+ // request).
1366+ google.protobuf.FieldMask update_mask = 2
1367+ [(google.api.field_behavior ) = OPTIONAL ];
1368+
1369+ // Optional. If true, ignore the safety checks when updating the
1370+ // AuthorizedView.
1371+ bool ignore_warnings = 3 [(google.api.field_behavior ) = OPTIONAL ];
1372+ }
1373+
1374+ // Metadata for the google.longrunning.Operation returned by
1375+ // [UpdateAuthorizedView][google.bigtable.admin.v2.BigtableTableAdmin.UpdateAuthorizedView].
1376+ message UpdateAuthorizedViewMetadata {
1377+ // The request that prompted the initiation of this UpdateAuthorizedView
1378+ // operation.
1379+ UpdateAuthorizedViewRequest original_request = 1 ;
1380+
1381+ // The time at which the original request was received.
1382+ google.protobuf.Timestamp request_time = 2 ;
1383+
1384+ // The time at which the operation failed or was completed successfully.
1385+ google.protobuf.Timestamp finish_time = 3 ;
1386+ }
1387+
1388+ // Request message for
1389+ // [google.bigtable.admin.v2.BigtableTableAdmin.DeleteAuthorizedView][google.bigtable.admin.v2.BigtableTableAdmin.DeleteAuthorizedView]
1390+ message DeleteAuthorizedViewRequest {
1391+ // Required. The unique name of the AuthorizedView to be deleted.
1392+ // Values are of the form
1393+ // `projects/{project}/instances/{instance}/tables/{table}/authorizedViews/{authorized_view}`.
1394+ string name = 1 [
1395+ (google.api.field_behavior ) = REQUIRED ,
1396+ (google.api.resource_reference ) = {
1397+ type : "bigtableadmin.googleapis.com/AuthorizedView"
1398+ }
1399+ ];
1400+
1401+ // Optional. The current etag of the AuthorizedView.
1402+ // If an etag is provided and does not match the current etag of the
1403+ // AuthorizedView, deletion will be blocked and an ABORTED error will be
1404+ // returned.
1405+ string etag = 2 [(google.api.field_behavior ) = OPTIONAL ];
1406+ }
0 commit comments