Skip to content

Commit 6465963

Browse files
Google APIscopybara-github
authored andcommitted
feat: Add authorized view bindings to Cloud Bigtable data APIs and messages
docs: The field `table_name` in message `.google.bigtable.v2.ReadRowsRequest` is changed from required to optional docs: The field `table_name` in message `.google.bigtable.v2.SampleRowKeysRequest` is changed from required to optional docs: The field `table_name` in message `.google.bigtable.v2.MutateRowRequest` is changed from required to optional docs: The field `table_name` in message `.google.bigtable.v2.MutateRowsRequest` is changed from required to optional docs: The field `table_name` in message `.google.bigtable.v2.CheckAndMutateRowRequest` is changed from required to optional docs: The field `table_name` in message `.google.bigtable.v2.ReadModifyWriteRowRequest` is changed from required to optional PiperOrigin-RevId: 612537984
1 parent c533283 commit 6465963

1 file changed

Lines changed: 148 additions & 15 deletions

File tree

google/bigtable/v2/bigtable.proto

Lines changed: 148 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ option (google.api.resource_definition) = {
4343
type: "bigtableadmin.googleapis.com/Table"
4444
pattern: "projects/{project}/instances/{instance}/tables/{table}"
4545
};
46+
option (google.api.resource_definition) = {
47+
type: "bigtableadmin.googleapis.com/AuthorizedView"
48+
pattern: "projects/{project}/instances/{instance}/tables/{table}/authorizedViews/{authorized_view}"
49+
};
4650

4751
// Service for reading from and writing to existing Bigtable tables.
4852
service Bigtable {
@@ -64,13 +68,21 @@ service Bigtable {
6468
option (google.api.http) = {
6569
post: "/v2/{table_name=projects/*/instances/*/tables/*}:readRows"
6670
body: "*"
71+
additional_bindings {
72+
post: "/v2/{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}:readRows"
73+
body: "*"
74+
}
6775
};
6876
option (google.api.routing) = {
6977
routing_parameters {
7078
field: "table_name"
7179
path_template: "{table_name=projects/*/instances/*/tables/*}"
7280
}
7381
routing_parameters { field: "app_profile_id" }
82+
routing_parameters {
83+
field: "authorized_view_name"
84+
path_template: "{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}"
85+
}
7486
};
7587
option (google.api.method_signature) = "table_name";
7688
option (google.api.method_signature) = "table_name,app_profile_id";
@@ -84,13 +96,20 @@ service Bigtable {
8496
returns (stream SampleRowKeysResponse) {
8597
option (google.api.http) = {
8698
get: "/v2/{table_name=projects/*/instances/*/tables/*}:sampleRowKeys"
99+
additional_bindings {
100+
get: "/v2/{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}:sampleRowKeys"
101+
}
87102
};
88103
option (google.api.routing) = {
89104
routing_parameters {
90105
field: "table_name"
91106
path_template: "{table_name=projects/*/instances/*/tables/*}"
92107
}
93108
routing_parameters { field: "app_profile_id" }
109+
routing_parameters {
110+
field: "authorized_view_name"
111+
path_template: "{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}"
112+
}
94113
};
95114
option (google.api.method_signature) = "table_name";
96115
option (google.api.method_signature) = "table_name,app_profile_id";
@@ -102,13 +121,21 @@ service Bigtable {
102121
option (google.api.http) = {
103122
post: "/v2/{table_name=projects/*/instances/*/tables/*}:mutateRow"
104123
body: "*"
124+
additional_bindings {
125+
post: "/v2/{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}:mutateRow"
126+
body: "*"
127+
}
105128
};
106129
option (google.api.routing) = {
107130
routing_parameters {
108131
field: "table_name"
109132
path_template: "{table_name=projects/*/instances/*/tables/*}"
110133
}
111134
routing_parameters { field: "app_profile_id" }
135+
routing_parameters {
136+
field: "authorized_view_name"
137+
path_template: "{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}"
138+
}
112139
};
113140
option (google.api.method_signature) = "table_name,row_key,mutations";
114141
option (google.api.method_signature) =
@@ -122,13 +149,21 @@ service Bigtable {
122149
option (google.api.http) = {
123150
post: "/v2/{table_name=projects/*/instances/*/tables/*}:mutateRows"
124151
body: "*"
152+
additional_bindings {
153+
post: "/v2/{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}:mutateRows"
154+
body: "*"
155+
}
125156
};
126157
option (google.api.routing) = {
127158
routing_parameters {
128159
field: "table_name"
129160
path_template: "{table_name=projects/*/instances/*/tables/*}"
130161
}
131162
routing_parameters { field: "app_profile_id" }
163+
routing_parameters {
164+
field: "authorized_view_name"
165+
path_template: "{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}"
166+
}
132167
};
133168
option (google.api.method_signature) = "table_name,entries";
134169
option (google.api.method_signature) = "table_name,entries,app_profile_id";
@@ -140,13 +175,21 @@ service Bigtable {
140175
option (google.api.http) = {
141176
post: "/v2/{table_name=projects/*/instances/*/tables/*}:checkAndMutateRow"
142177
body: "*"
178+
additional_bindings {
179+
post: "/v2/{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}:checkAndMutateRow"
180+
body: "*"
181+
}
143182
};
144183
option (google.api.routing) = {
145184
routing_parameters {
146185
field: "table_name"
147186
path_template: "{table_name=projects/*/instances/*/tables/*}"
148187
}
149188
routing_parameters { field: "app_profile_id" }
189+
routing_parameters {
190+
field: "authorized_view_name"
191+
path_template: "{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}"
192+
}
150193
};
151194
option (google.api.method_signature) =
152195
"table_name,row_key,predicate_filter,true_mutations,false_mutations";
@@ -182,13 +225,21 @@ service Bigtable {
182225
option (google.api.http) = {
183226
post: "/v2/{table_name=projects/*/instances/*/tables/*}:readModifyWriteRow"
184227
body: "*"
228+
additional_bindings {
229+
post: "/v2/{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}:readModifyWriteRow"
230+
body: "*"
231+
}
185232
};
186233
option (google.api.routing) = {
187234
routing_parameters {
188235
field: "table_name"
189236
path_template: "{table_name=projects/*/instances/*/tables/*}"
190237
}
191238
routing_parameters { field: "app_profile_id" }
239+
routing_parameters {
240+
field: "authorized_view_name"
241+
path_template: "{authorized_view_name=projects/*/instances/*/tables/*/authorizedViews/*}"
242+
}
192243
};
193244
option (google.api.method_signature) = "table_name,row_key,rules";
194245
option (google.api.method_signature) =
@@ -243,16 +294,28 @@ message ReadRowsRequest {
243294
REQUEST_STATS_FULL = 2;
244295
}
245296

246-
// Required. The unique name of the table from which to read.
297+
// Optional. The unique name of the table from which to read.
298+
//
247299
// Values are of the form
248300
// `projects/<project>/instances/<instance>/tables/<table>`.
249301
string table_name = 1 [
250-
(google.api.field_behavior) = REQUIRED,
302+
(google.api.field_behavior) = OPTIONAL,
251303
(google.api.resource_reference) = {
252304
type: "bigtableadmin.googleapis.com/Table"
253305
}
254306
];
255307

308+
// Optional. The unique name of the AuthorizedView from which to read.
309+
//
310+
// Values are of the form
311+
// `projects/<project>/instances/<instance>/tables/<table>/authorizedViews/<authorized_view>`.
312+
string authorized_view_name = 9 [
313+
(google.api.field_behavior) = OPTIONAL,
314+
(google.api.resource_reference) = {
315+
type: "bigtableadmin.googleapis.com/AuthorizedView"
316+
}
317+
];
318+
256319
// This value specifies routing for replication. If not specified, the
257320
// "default" application profile will be used.
258321
string app_profile_id = 5;
@@ -390,16 +453,29 @@ message ReadRowsResponse {
390453

391454
// Request message for Bigtable.SampleRowKeys.
392455
message SampleRowKeysRequest {
393-
// Required. The unique name of the table from which to sample row keys.
456+
// Optional. The unique name of the table from which to sample row keys.
457+
//
394458
// Values are of the form
395459
// `projects/<project>/instances/<instance>/tables/<table>`.
396460
string table_name = 1 [
397-
(google.api.field_behavior) = REQUIRED,
461+
(google.api.field_behavior) = OPTIONAL,
398462
(google.api.resource_reference) = {
399463
type: "bigtableadmin.googleapis.com/Table"
400464
}
401465
];
402466

467+
// Optional. The unique name of the AuthorizedView from which to sample row
468+
// keys.
469+
//
470+
// Values are of the form
471+
// `projects/<project>/instances/<instance>/tables/<table>/authorizedViews/<authorized_view>`.
472+
string authorized_view_name = 4 [
473+
(google.api.field_behavior) = OPTIONAL,
474+
(google.api.resource_reference) = {
475+
type: "bigtableadmin.googleapis.com/AuthorizedView"
476+
}
477+
];
478+
403479
// This value specifies routing for replication. If not specified, the
404480
// "default" application profile will be used.
405481
string app_profile_id = 2;
@@ -425,16 +501,30 @@ message SampleRowKeysResponse {
425501

426502
// Request message for Bigtable.MutateRow.
427503
message MutateRowRequest {
428-
// Required. The unique name of the table to which the mutation should be
429-
// applied. Values are of the form
504+
// Optional. The unique name of the table to which the mutation should be
505+
// applied.
506+
//
507+
// Values are of the form
430508
// `projects/<project>/instances/<instance>/tables/<table>`.
431509
string table_name = 1 [
432-
(google.api.field_behavior) = REQUIRED,
510+
(google.api.field_behavior) = OPTIONAL,
433511
(google.api.resource_reference) = {
434512
type: "bigtableadmin.googleapis.com/Table"
435513
}
436514
];
437515

516+
// Optional. The unique name of the AuthorizedView to which the mutation
517+
// should be applied.
518+
//
519+
// Values are of the form
520+
// `projects/<project>/instances/<instance>/tables/<table>/authorizedViews/<authorized_view>`.
521+
string authorized_view_name = 6 [
522+
(google.api.field_behavior) = OPTIONAL,
523+
(google.api.resource_reference) = {
524+
type: "bigtableadmin.googleapis.com/AuthorizedView"
525+
}
526+
];
527+
438528
// This value specifies routing for replication. If not specified, the
439529
// "default" application profile will be used.
440530
string app_profile_id = 4;
@@ -464,15 +554,30 @@ message MutateRowsRequest {
464554
repeated Mutation mutations = 2 [(google.api.field_behavior) = REQUIRED];
465555
}
466556

467-
// Required. The unique name of the table to which the mutations should be
557+
// Optional. The unique name of the table to which the mutations should be
468558
// applied.
559+
//
560+
// Values are of the form
561+
// `projects/<project>/instances/<instance>/tables/<table>`.
469562
string table_name = 1 [
470-
(google.api.field_behavior) = REQUIRED,
563+
(google.api.field_behavior) = OPTIONAL,
471564
(google.api.resource_reference) = {
472565
type: "bigtableadmin.googleapis.com/Table"
473566
}
474567
];
475568

569+
// Optional. The unique name of the AuthorizedView to which the mutations
570+
// should be applied.
571+
//
572+
// Values are of the form
573+
// `projects/<project>/instances/<instance>/tables/<table>/authorizedViews/<authorized_view>`.
574+
string authorized_view_name = 5 [
575+
(google.api.field_behavior) = OPTIONAL,
576+
(google.api.resource_reference) = {
577+
type: "bigtableadmin.googleapis.com/AuthorizedView"
578+
}
579+
];
580+
476581
// This value specifies routing for replication. If not specified, the
477582
// "default" application profile will be used.
478583
string app_profile_id = 3;
@@ -533,16 +638,30 @@ message RateLimitInfo {
533638

534639
// Request message for Bigtable.CheckAndMutateRow.
535640
message CheckAndMutateRowRequest {
536-
// Required. The unique name of the table to which the conditional mutation
537-
// should be applied. Values are of the form
641+
// Optional. The unique name of the table to which the conditional mutation
642+
// should be applied.
643+
//
644+
// Values are of the form
538645
// `projects/<project>/instances/<instance>/tables/<table>`.
539646
string table_name = 1 [
540-
(google.api.field_behavior) = REQUIRED,
647+
(google.api.field_behavior) = OPTIONAL,
541648
(google.api.resource_reference) = {
542649
type: "bigtableadmin.googleapis.com/Table"
543650
}
544651
];
545652

653+
// Optional. The unique name of the AuthorizedView to which the conditional
654+
// mutation should be applied.
655+
//
656+
// Values are of the form
657+
// `projects/<project>/instances/<instance>/tables/<table>/authorizedViews/<authorized_view>`.
658+
string authorized_view_name = 9 [
659+
(google.api.field_behavior) = OPTIONAL,
660+
(google.api.resource_reference) = {
661+
type: "bigtableadmin.googleapis.com/AuthorizedView"
662+
}
663+
];
664+
546665
// This value specifies routing for replication. If not specified, the
547666
// "default" application profile will be used.
548667
string app_profile_id = 7;
@@ -601,16 +720,30 @@ message PingAndWarmResponse {}
601720

602721
// Request message for Bigtable.ReadModifyWriteRow.
603722
message ReadModifyWriteRowRequest {
604-
// Required. The unique name of the table to which the read/modify/write rules
605-
// should be applied. Values are of the form
723+
// Optional. The unique name of the table to which the read/modify/write rules
724+
// should be applied.
725+
//
726+
// Values are of the form
606727
// `projects/<project>/instances/<instance>/tables/<table>`.
607728
string table_name = 1 [
608-
(google.api.field_behavior) = REQUIRED,
729+
(google.api.field_behavior) = OPTIONAL,
609730
(google.api.resource_reference) = {
610731
type: "bigtableadmin.googleapis.com/Table"
611732
}
612733
];
613734

735+
// Optional. The unique name of the AuthorizedView to which the
736+
// read/modify/write rules should be applied.
737+
//
738+
// Values are of the form
739+
// `projects/<project>/instances/<instance>/tables/<table>/authorizedViews/<authorized_view>`.
740+
string authorized_view_name = 6 [
741+
(google.api.field_behavior) = OPTIONAL,
742+
(google.api.resource_reference) = {
743+
type: "bigtableadmin.googleapis.com/AuthorizedView"
744+
}
745+
];
746+
614747
// This value specifies routing for replication. If not specified, the
615748
// "default" application profile will be used.
616749
string app_profile_id = 4;

0 commit comments

Comments
 (0)