@devvit/protos 0.11.17-next-2025-05-29-91b3cf49f.0 → 0.11.17-next-2025-05-29-de9726085.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/package.json +4 -4
  2. package/schema/.snootobuf/deps/google/api/annotations.proto +1 -1
  3. package/schema/.snootobuf/deps/google/api/auth.proto +75 -19
  4. package/schema/.snootobuf/deps/google/api/backend.proto +142 -8
  5. package/schema/.snootobuf/deps/google/api/billing.proto +23 -13
  6. package/schema/.snootobuf/deps/google/api/client.proto +333 -1
  7. package/schema/.snootobuf/deps/google/api/config_change.proto +2 -3
  8. package/schema/.snootobuf/deps/google/api/consumer.proto +1 -2
  9. package/schema/.snootobuf/deps/google/api/context.proto +34 -5
  10. package/schema/.snootobuf/deps/google/api/control.proto +15 -7
  11. package/schema/.snootobuf/deps/google/api/distribution.proto +5 -5
  12. package/schema/.snootobuf/deps/google/api/documentation.proto +27 -16
  13. package/schema/.snootobuf/deps/google/api/endpoint.proto +23 -25
  14. package/schema/.snootobuf/deps/google/api/field_behavior.proto +23 -3
  15. package/schema/.snootobuf/deps/google/api/http.proto +173 -120
  16. package/schema/.snootobuf/deps/google/api/httpbody.proto +11 -6
  17. package/schema/.snootobuf/deps/google/api/label.proto +1 -2
  18. package/schema/.snootobuf/deps/google/api/launch_stage.proto +10 -5
  19. package/schema/.snootobuf/deps/google/api/log.proto +1 -2
  20. package/schema/.snootobuf/deps/google/api/logging.proto +6 -8
  21. package/schema/.snootobuf/deps/google/api/metric.proto +116 -40
  22. package/schema/.snootobuf/deps/google/api/monitored_resource.proto +38 -24
  23. package/schema/.snootobuf/deps/google/api/monitoring.proto +43 -25
  24. package/schema/.snootobuf/deps/google/api/quota.proto +20 -95
  25. package/schema/.snootobuf/deps/google/api/resource.proto +18 -74
  26. package/schema/.snootobuf/deps/google/api/routing.proto +1 -1
  27. package/schema/.snootobuf/deps/google/api/service.proto +54 -38
  28. package/schema/.snootobuf/deps/google/api/source_info.proto +1 -2
  29. package/schema/.snootobuf/deps/google/api/system_parameter.proto +3 -3
  30. package/schema/.snootobuf/deps/google/api/usage.proto +9 -5
@@ -1,4 +1,4 @@
1
- // Copyright 2017 Google Inc.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -16,19 +16,16 @@ syntax = "proto3";
16
16
 
17
17
  package google.api;
18
18
 
19
- import "google/api/annotations.proto";
20
-
21
19
  option go_package = "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig";
22
20
  option java_multiple_files = true;
23
21
  option java_outer_classname = "QuotaProto";
24
22
  option java_package = "com.google.api";
25
23
  option objc_class_prefix = "GAPI";
26
24
 
27
-
28
25
  // Quota configuration helps to achieve fairness and budgeting in service
29
26
  // usage.
30
27
  //
31
- // The quota configuration works this way:
28
+ // The metric based quota configuration works this way:
32
29
  // - The service configuration defines a set of metrics.
33
30
  // - For API calls, the quota.metric_rules maps methods to metrics with
34
31
  // corresponding costs.
@@ -46,10 +43,11 @@ option objc_class_prefix = "GAPI";
46
43
  // values:
47
44
  // STANDARD: 10000
48
45
  //
49
- // # The metric rules bind all methods to the read_calls metric,
50
- // # except for the UpdateBook and DeleteBook methods. These two methods
51
- // # are mapped to the write_calls metric, with the UpdateBook method
52
- // # consuming at twice rate as the DeleteBook method.
46
+ //
47
+ // (The metric rules bind all methods to the read_calls metric,
48
+ // except for the UpdateBook and DeleteBook methods. These two methods
49
+ // are mapped to the write_calls metric, with the UpdateBook method
50
+ // consuming at twice rate as the DeleteBook method.)
53
51
  // metric_rules:
54
52
  // - selector: "*"
55
53
  // metric_costs:
@@ -74,28 +72,23 @@ option objc_class_prefix = "GAPI";
74
72
  // metric_kind: DELTA
75
73
  // value_type: INT64
76
74
  //
75
+ //
77
76
  message Quota {
78
- // List of `QuotaLimit` definitions for the service.
79
- //
80
- // Used by metric-based quotas only.
77
+ // List of QuotaLimit definitions for the service.
81
78
  repeated QuotaLimit limits = 3;
82
79
 
83
- // List of `MetricRule` definitions, each one mapping a selected method to one
80
+ // List of MetricRule definitions, each one mapping a selected method to one
84
81
  // or more metrics.
85
- //
86
- // Used by metric-based quotas only.
87
82
  repeated MetricRule metric_rules = 4;
88
83
  }
89
84
 
90
85
  // Bind API methods to metrics. Binding a method to a metric causes that
91
- // metric's configured quota, billing, and monitoring behaviors to apply to the
92
- // method call.
93
- //
94
- // Used by metric-based quotas only.
86
+ // metric's configured quota behaviors to apply to the method call.
95
87
  message MetricRule {
96
88
  // Selects the methods to which this rule applies.
97
89
  //
98
- // Refer to [selector][google.api.DocumentationRule.selector] for syntax details.
90
+ // Refer to [selector][google.api.DocumentationRule.selector] for syntax
91
+ // details.
99
92
  string selector = 1;
100
93
 
101
94
  // Metrics to update when the selected methods are called, and the associated
@@ -111,24 +104,12 @@ message MetricRule {
111
104
  // for a limit type. There can be at most one limit for a duration and limit
112
105
  // type combination defined within a `QuotaGroup`.
113
106
  message QuotaLimit {
114
- // Name of the quota limit. The name is used to refer to the limit when
115
- // overriding the default limit on per-consumer basis.
116
- //
117
- // For group-based quota limits, the name must be unique within the quota
118
- // group. If a name is not provided, it will be generated from the limit_by
119
- // and duration fields.
107
+ // Name of the quota limit.
120
108
  //
121
- // For metric-based quota limits, the name must be provided, and it must be
122
- // unique within the service. The name can only include alphanumeric
123
- // characters as well as '-'.
109
+ // The name must be provided, and it must be unique within the service. The
110
+ // name can only include alphanumeric characters as well as '-'.
124
111
  //
125
112
  // The maximum length of the limit name is 64 characters.
126
- //
127
- // The name of a limit is used as a unique identifier for this limit.
128
- // Therefore, once a limit has been put into use, its name should be
129
- // immutable. You can use the display_name field to provide a user-friendly
130
- // name for the limit. The display name can be evolved over time without
131
- // affecting the identity of the limit.
132
113
  string name = 6;
133
114
 
134
115
  // Optional. User-visible, extended description for this quota limit.
@@ -169,10 +150,7 @@ message QuotaLimit {
169
150
  // Used by group-based quotas only.
170
151
  int64 free_tier = 7;
171
152
 
172
- // Duration of this limit in textual notation. Example: "100s", "24h", "1d".
173
- // For duration longer than a day, only multiple of days is supported. We
174
- // support only "100s" and "1d" for now. Additional support will be added in
175
- // the future. "0" indicates indefinite duration.
153
+ // Duration of this limit in textual notation. Must be "100s" or "1d".
176
154
  //
177
155
  // Used by group-based quotas only.
178
156
  string duration = 5;
@@ -180,75 +158,22 @@ message QuotaLimit {
180
158
  // The name of the metric this quota limit applies to. The quota limits with
181
159
  // the same metric will be checked together during runtime. The metric must be
182
160
  // defined within the service config.
183
- //
184
- // Used by metric-based quotas only.
185
161
  string metric = 8;
186
162
 
187
163
  // Specify the unit of the quota limit. It uses the same syntax as
188
164
  // [Metric.unit][]. The supported unit kinds are determined by the quota
189
165
  // backend system.
190
166
  //
191
- // The [Google Service Control](https://cloud.google.com/service-control)
192
- // supports the following unit components:
193
- // * One of the time intevals:
194
- // * "/min" for quota every minute.
195
- // * "/d" for quota every 24 hours, starting 00:00 US Pacific Time.
196
- // * Otherwise the quota won't be reset by time, such as storage limit.
197
- // * One and only one of the granted containers:
198
- // * "/{organization}" quota for an organization.
199
- // * "/{project}" quota for a project.
200
- // * "/{folder}" quota for a folder.
201
- // * "/{resource}" quota for a universal resource.
202
- // * Zero or more quota segmentation dimension. Not all combos are valid.
203
- // * "/{region}" quota for every region. Not to be used with time intervals.
204
- // * Otherwise the resources granted on the target is not segmented.
205
- // * "/{zone}" quota for every zone. Not to be used with time intervals.
206
- // * Otherwise the resources granted on the target is not segmented.
207
- // * "/{resource}" quota for a resource associated with a project or org.
208
- //
209
167
  // Here are some examples:
210
168
  // * "1/min/{project}" for quota per minute per project.
211
- // * "1/min/{user}" for quota per minute per user.
212
- // * "1/min/{organization}" for quota per minute per organization.
213
169
  //
214
170
  // Note: the order of unit components is insignificant.
215
171
  // The "1" at the beginning is required to follow the metric unit syntax.
216
- //
217
- // Used by metric-based quotas only.
218
172
  string unit = 9;
219
173
 
220
- // Tiered limit values. Also allows for regional or zone overrides for these
221
- // values if "/{region}" or "/{zone}" is specified in the unit field.
222
- //
223
- // Currently supported tiers from low to high:
224
- // VERY_LOW, LOW, STANDARD, HIGH, VERY_HIGH
225
- //
226
- // To apply different limit values for users according to their tiers, specify
227
- // the values for the tiers you want to differentiate. For example:
228
- // {LOW:100, STANDARD:500, HIGH:1000, VERY_HIGH:5000}
229
- //
230
- // The limit value for each tier is optional except for the tier STANDARD.
231
- // The limit value for an unspecified tier falls to the value of its next
232
- // tier towards tier STANDARD. For the above example, the limit value for tier
233
- // STANDARD is 500.
234
- //
235
- // To apply the same limit value for all users, just specify limit value for
236
- // tier STANDARD. For example: {STANDARD:500}.
237
- //
238
- // To apply a regional overide for a tier, add a map entry with key
239
- // "<TIER>/<region>", where <region> is a region name. Similarly, for a zone
240
- // override, add a map entry with key "<TIER>/{zone}".
241
- // Further, a wildcard can be used at the end of a zone name in order to
242
- // specify zone level overrides. For example:
243
- // LOW: 10, STANDARD: 50, HIGH: 100,
244
- // LOW/us-central1: 20, STANDARD/us-central1: 60, HIGH/us-central1: 200,
245
- // LOW/us-central1-*: 10, STANDARD/us-central1-*: 20, HIGH/us-central1-*: 80
246
- //
247
- // The regional overrides tier set for each region must be the same as
248
- // the tier set for default limit values. Same rule applies for zone overrides
249
- // tier as well.
250
- //
251
- // Used by metric-based quotas only.
174
+ // Tiered limit values. You must specify this as a key:value pair, with an
175
+ // integer value that is the maximum number of requests allowed for the
176
+ // specified unit. Currently only STANDARD is supported.
252
177
  map<string, int64> values = 10;
253
178
 
254
179
  // User-visible display name for this limit.
@@ -1,4 +1,4 @@
1
- // Copyright 2020 Google LLC
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -57,11 +57,7 @@ extend google.protobuf.MessageOptions {
57
57
  // // For Kubernetes resources, the format is {api group}/{kind}.
58
58
  // option (google.api.resource) = {
59
59
  // type: "pubsub.googleapis.com/Topic"
60
- // name_descriptor: {
61
- // pattern: "projects/{project}/topics/{topic}"
62
- // parent_type: "cloudresourcemanager.googleapis.com/Project"
63
- // parent_name_extractor: "projects/{project}"
64
- // }
60
+ // pattern: "projects/{project}/topics/{topic}"
65
61
  // };
66
62
  // }
67
63
  //
@@ -69,10 +65,7 @@ extend google.protobuf.MessageOptions {
69
65
  //
70
66
  // resources:
71
67
  // - type: "pubsub.googleapis.com/Topic"
72
- // name_descriptor:
73
- // - pattern: "projects/{project}/topics/{topic}"
74
- // parent_type: "cloudresourcemanager.googleapis.com/Project"
75
- // parent_name_extractor: "projects/{project}"
68
+ // pattern: "projects/{project}/topics/{topic}"
76
69
  //
77
70
  // Sometimes, resources have multiple patterns, typically because they can
78
71
  // live under multiple parents.
@@ -82,26 +75,10 @@ extend google.protobuf.MessageOptions {
82
75
  // message LogEntry {
83
76
  // option (google.api.resource) = {
84
77
  // type: "logging.googleapis.com/LogEntry"
85
- // name_descriptor: {
86
- // pattern: "projects/{project}/logs/{log}"
87
- // parent_type: "cloudresourcemanager.googleapis.com/Project"
88
- // parent_name_extractor: "projects/{project}"
89
- // }
90
- // name_descriptor: {
91
- // pattern: "folders/{folder}/logs/{log}"
92
- // parent_type: "cloudresourcemanager.googleapis.com/Folder"
93
- // parent_name_extractor: "folders/{folder}"
94
- // }
95
- // name_descriptor: {
96
- // pattern: "organizations/{organization}/logs/{log}"
97
- // parent_type: "cloudresourcemanager.googleapis.com/Organization"
98
- // parent_name_extractor: "organizations/{organization}"
99
- // }
100
- // name_descriptor: {
101
- // pattern: "billingAccounts/{billing_account}/logs/{log}"
102
- // parent_type: "billing.googleapis.com/BillingAccount"
103
- // parent_name_extractor: "billingAccounts/{billing_account}"
104
- // }
78
+ // pattern: "projects/{project}/logs/{log}"
79
+ // pattern: "folders/{folder}/logs/{log}"
80
+ // pattern: "organizations/{organization}/logs/{log}"
81
+ // pattern: "billingAccounts/{billing_account}/logs/{log}"
105
82
  // };
106
83
  // }
107
84
  //
@@ -109,48 +86,10 @@ extend google.protobuf.MessageOptions {
109
86
  //
110
87
  // resources:
111
88
  // - type: 'logging.googleapis.com/LogEntry'
112
- // name_descriptor:
113
- // - pattern: "projects/{project}/logs/{log}"
114
- // parent_type: "cloudresourcemanager.googleapis.com/Project"
115
- // parent_name_extractor: "projects/{project}"
116
- // - pattern: "folders/{folder}/logs/{log}"
117
- // parent_type: "cloudresourcemanager.googleapis.com/Folder"
118
- // parent_name_extractor: "folders/{folder}"
119
- // - pattern: "organizations/{organization}/logs/{log}"
120
- // parent_type: "cloudresourcemanager.googleapis.com/Organization"
121
- // parent_name_extractor: "organizations/{organization}"
122
- // - pattern: "billingAccounts/{billing_account}/logs/{log}"
123
- // parent_type: "billing.googleapis.com/BillingAccount"
124
- // parent_name_extractor: "billingAccounts/{billing_account}"
125
- //
126
- // For flexible resources, the resource name doesn't contain parent names, but
127
- // the resource itself has parents for policy evaluation.
128
- //
129
- // Example:
130
- //
131
- // message Shelf {
132
- // option (google.api.resource) = {
133
- // type: "library.googleapis.com/Shelf"
134
- // name_descriptor: {
135
- // pattern: "shelves/{shelf}"
136
- // parent_type: "cloudresourcemanager.googleapis.com/Project"
137
- // }
138
- // name_descriptor: {
139
- // pattern: "shelves/{shelf}"
140
- // parent_type: "cloudresourcemanager.googleapis.com/Folder"
141
- // }
142
- // };
143
- // }
144
- //
145
- // The ResourceDescriptor Yaml config will look like:
146
- //
147
- // resources:
148
- // - type: 'library.googleapis.com/Shelf'
149
- // name_descriptor:
150
- // - pattern: "shelves/{shelf}"
151
- // parent_type: "cloudresourcemanager.googleapis.com/Project"
152
- // - pattern: "shelves/{shelf}"
153
- // parent_type: "cloudresourcemanager.googleapis.com/Folder"
89
+ // pattern: "projects/{project}/logs/{log}"
90
+ // pattern: "folders/{folder}/logs/{log}"
91
+ // pattern: "organizations/{organization}/logs/{log}"
92
+ // pattern: "billingAccounts/{billing_account}/logs/{log}"
154
93
  message ResourceDescriptor {
155
94
  // A description of the historical or future-looking state of the
156
95
  // resource pattern.
@@ -240,8 +179,13 @@ message ResourceDescriptor {
240
179
 
241
180
  // The plural name used in the resource name and permission names, such as
242
181
  // 'projects' for the resource name of 'projects/{project}' and the permission
243
- // name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same
244
- // concept of the `plural` field in k8s CRD spec
182
+ // name of 'cloudresourcemanager.googleapis.com/projects.get'. One exception
183
+ // to this is for Nested Collections that have stuttering names, as defined
184
+ // in [AIP-122](https://google.aip.dev/122#nested-collections), where the
185
+ // collection ID in the resource name pattern does not necessarily directly
186
+ // match the `plural` value.
187
+ //
188
+ // It is the same concept of the `plural` field in k8s CRD spec
245
189
  // https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
246
190
  //
247
191
  // Note: The plural form is required even for singleton resources. See
@@ -1,4 +1,4 @@
1
- // Copyright 2021 Google LLC
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- // Copyright 2017 Google Inc.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -16,10 +16,10 @@ syntax = "proto3";
16
16
 
17
17
  package google.api;
18
18
 
19
- import "google/api/annotations.proto";
20
19
  import "google/api/auth.proto";
21
20
  import "google/api/backend.proto";
22
21
  import "google/api/billing.proto";
22
+ import "google/api/client.proto";
23
23
  import "google/api/context.proto";
24
24
  import "google/api/control.proto";
25
25
  import "google/api/documentation.proto";
@@ -44,21 +44,30 @@ option java_outer_classname = "ServiceProto";
44
44
  option java_package = "com.google.api";
45
45
  option objc_class_prefix = "GAPI";
46
46
 
47
-
48
- // `Service` is the root object of Google service configuration schema. It
49
- // describes basic information about a service, such as the name and the
50
- // title, and delegates other aspects to sub-sections. Each sub-section is
51
- // either a proto message or a repeated proto message that configures a
52
- // specific aspect, such as auth. See each proto message definition for details.
47
+ // `Service` is the root object of Google API service configuration (service
48
+ // config). It describes the basic information about a logical service,
49
+ // such as the service name and the user-facing title, and delegates other
50
+ // aspects to sub-sections. Each sub-section is either a proto message or a
51
+ // repeated proto message that configures a specific aspect, such as auth.
52
+ // For more information, see each proto message definition.
53
53
  //
54
54
  // Example:
55
55
  //
56
56
  // type: google.api.Service
57
- // config_version: 3
58
57
  // name: calendar.googleapis.com
59
58
  // title: Google Calendar API
60
59
  // apis:
61
60
  // - name: google.calendar.v3.Calendar
61
+ //
62
+ // visibility:
63
+ // rules:
64
+ // - selector: "google.calendar.v3.*"
65
+ // restriction: PREVIEW
66
+ // backend:
67
+ // rules:
68
+ // - selector: "google.calendar.v3.*"
69
+ // address: calendar.example.com
70
+ //
62
71
  // authentication:
63
72
  // providers:
64
73
  // - id: google_calendar_auth
@@ -69,48 +78,46 @@ option objc_class_prefix = "GAPI";
69
78
  // requirements:
70
79
  // provider_id: google_calendar_auth
71
80
  message Service {
72
- // The semantic version of the service configuration. The config version
73
- // affects the interpretation of the service configuration. For example,
74
- // certain features are enabled by default for certain config versions.
75
- // The latest config version is `3`.
76
- google.protobuf.UInt32Value config_version = 20;
77
-
78
- // The DNS address at which this service is available,
79
- // e.g. `calendar.googleapis.com`.
81
+ // The service name, which is a DNS-like logical identifier for the
82
+ // service, such as `calendar.googleapis.com`. The service name
83
+ // typically goes through DNS verification to make sure the owner
84
+ // of the service also owns the DNS name.
80
85
  string name = 1;
81
86
 
82
- // A unique ID for a specific instance of this message, typically assigned
83
- // by the client for tracking purpose. If empty, the server may choose to
84
- // generate one instead.
85
- string id = 33;
86
-
87
- // The product title for this service.
87
+ // The product title for this service, it is the name displayed in Google
88
+ // Cloud Console.
88
89
  string title = 2;
89
90
 
90
91
  // The Google project that owns this service.
91
92
  string producer_project_id = 22;
92
93
 
94
+ // A unique ID for a specific instance of this message, typically assigned
95
+ // by the client for tracking purpose. Must be no longer than 63 characters
96
+ // and only lower case letters, digits, '.', '_' and '-' are allowed. If
97
+ // empty, the server may choose to generate one instead.
98
+ string id = 33;
99
+
93
100
  // A list of API interfaces exported by this service. Only the `name` field
94
- // of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by the configuration
95
- // author, as the remaining fields will be derived from the IDL during the
96
- // normalization process. It is an error to specify an API interface here
97
- // which cannot be resolved against the associated IDL files.
101
+ // of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
102
+ // the configuration author, as the remaining fields will be derived from the
103
+ // IDL during the normalization process. It is an error to specify an API
104
+ // interface here which cannot be resolved against the associated IDL files.
98
105
  repeated google.protobuf.Api apis = 3;
99
106
 
100
107
  // A list of all proto message types included in this API service.
101
- // Types referenced directly or indirectly by the `apis` are
102
- // automatically included. Messages which are not referenced but
103
- // shall be included, such as types used by the `google.protobuf.Any` type,
104
- // should be listed here by name. Example:
108
+ // Types referenced directly or indirectly by the `apis` are automatically
109
+ // included. Messages which are not referenced but shall be included, such as
110
+ // types used by the `google.protobuf.Any` type, should be listed here by
111
+ // name by the configuration author. Example:
105
112
  //
106
113
  // types:
107
114
  // - name: google.protobuf.Int32
108
115
  repeated google.protobuf.Type types = 4;
109
116
 
110
- // A list of all enum types included in this API service. Enums
111
- // referenced directly or indirectly by the `apis` are automatically
112
- // included. Enums which are not referenced but shall be included
113
- // should be listed here by name. Example:
117
+ // A list of all enum types included in this API service. Enums referenced
118
+ // directly or indirectly by the `apis` are automatically included. Enums
119
+ // which are not referenced but shall be included should be listed here by
120
+ // name by the configuration author. Example:
114
121
  //
115
122
  // enums:
116
123
  // - name: google.someapi.v1.SomeEnum
@@ -152,7 +159,8 @@ message Service {
152
159
  repeated MetricDescriptor metrics = 24;
153
160
 
154
161
  // Defines the monitored resources used by this service. This is required
155
- // by the [Service.monitoring][google.api.Service.monitoring] and [Service.logging][google.api.Service.logging] configurations.
162
+ // by the [Service.monitoring][google.api.Service.monitoring] and
163
+ // [Service.logging][google.api.Service.logging] configurations.
156
164
  repeated MonitoredResourceDescriptor monitored_resources = 25;
157
165
 
158
166
  // Billing configuration.
@@ -170,6 +178,14 @@ message Service {
170
178
  // Output only. The source information for this configuration if available.
171
179
  SourceInfo source_info = 37;
172
180
 
173
- // Experimental configuration.
174
- reserved 101;
181
+ // Settings for [Google Cloud Client
182
+ // libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
183
+ // generated from APIs defined as protocol buffers.
184
+ Publishing publishing = 45;
185
+
186
+ // Obsolete. Do not use.
187
+ //
188
+ // This field has no semantic meaning. The service config compiler always
189
+ // sets this field to `3`.
190
+ google.protobuf.UInt32Value config_version = 20;
175
191
  }
@@ -1,4 +1,4 @@
1
- // Copyright 2018 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -24,7 +24,6 @@ option java_outer_classname = "SourceInfoProto";
24
24
  option java_package = "com.google.api";
25
25
  option objc_class_prefix = "GAPI";
26
26
 
27
-
28
27
  // Source information used to create a Service Config
29
28
  message SourceInfo {
30
29
  // All files used during config generation.
@@ -1,4 +1,4 @@
1
- // Copyright 2018 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -22,7 +22,6 @@ option java_outer_classname = "SystemParameterProto";
22
22
  option java_package = "com.google.api";
23
23
  option objc_class_prefix = "GAPI";
24
24
 
25
-
26
25
  // ### System parameter configuration
27
26
  //
28
27
  // A system parameter is a special kind of parameter defined by the API
@@ -68,7 +67,8 @@ message SystemParameterRule {
68
67
  // Selects the methods to which this rule applies. Use '*' to indicate all
69
68
  // methods in all APIs.
70
69
  //
71
- // Refer to [selector][google.api.DocumentationRule.selector] for syntax details.
70
+ // Refer to [selector][google.api.DocumentationRule.selector] for syntax
71
+ // details.
72
72
  string selector = 1;
73
73
 
74
74
  // Define parameters. Multiple names may be defined for a parameter.
@@ -1,4 +1,4 @@
1
- // Copyright 2018 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -16,20 +16,23 @@ syntax = "proto3";
16
16
 
17
17
  package google.api;
18
18
 
19
- import "google/api/annotations.proto";
20
-
21
19
  option go_package = "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig";
22
20
  option java_multiple_files = true;
23
21
  option java_outer_classname = "UsageProto";
24
22
  option java_package = "com.google.api";
25
23
  option objc_class_prefix = "GAPI";
26
24
 
27
-
28
25
  // Configuration controlling usage of a service.
29
26
  message Usage {
30
27
  // Requirements that must be satisfied before a consumer project can use the
31
28
  // service. Each requirement is of the form <service.name>/<requirement-id>;
32
29
  // for example 'serviceusage.googleapis.com/billing-enabled'.
30
+ //
31
+ // For Google APIs, a Terms of Service requirement must be included here.
32
+ // Google Cloud APIs must include "serviceusage.googleapis.com/tos/cloud".
33
+ // Other Google APIs should include
34
+ // "serviceusage.googleapis.com/tos/universal". Additional ToS can be
35
+ // included based on the business needs.
33
36
  repeated string requirements = 1;
34
37
 
35
38
  // A list of usage rules that apply to individual API methods.
@@ -77,7 +80,8 @@ message UsageRule {
77
80
  // Selects the methods to which this rule applies. Use '*' to indicate all
78
81
  // methods in all APIs.
79
82
  //
80
- // Refer to [selector][google.api.DocumentationRule.selector] for syntax details.
83
+ // Refer to [selector][google.api.DocumentationRule.selector] for syntax
84
+ // details.
81
85
  string selector = 1;
82
86
 
83
87
  // If true, the selected method allows unregistered calls, e.g. calls