xref: /aosp_15_r20/external/googleapis/google/cloud/apigateway/v1/apigateway.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2021 Google LLC
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.apigateway.v1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto";
21*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto";
22*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
23*d5c09012SAndroid Build Coastguard Worker
24*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.ApiGateway.V1";
25*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/apigateway/apiv1/apigatewaypb;apigatewaypb";
26*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
27*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.apigateway.v1";
28*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\ApiGateway\\V1";
29*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::ApiGateway::V1";
30*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = {
31*d5c09012SAndroid Build Coastguard Worker  type: "iam.googleapis.com/ServiceAccount"
32*d5c09012SAndroid Build Coastguard Worker  pattern: "projects/{project}/serviceAccounts/{service_account}"
33*d5c09012SAndroid Build Coastguard Worker};
34*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = {
35*d5c09012SAndroid Build Coastguard Worker  type: "servicemanagement.googleapis.com/ManagedService"
36*d5c09012SAndroid Build Coastguard Worker  pattern: "services/{service}"
37*d5c09012SAndroid Build Coastguard Worker};
38*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = {
39*d5c09012SAndroid Build Coastguard Worker  type: "servicemanagement.googleapis.com/Service"
40*d5c09012SAndroid Build Coastguard Worker  pattern: "services/{service}/configs/{config}"
41*d5c09012SAndroid Build Coastguard Worker};
42*d5c09012SAndroid Build Coastguard Worker
43*d5c09012SAndroid Build Coastguard Worker// An API that can be served by one or more Gateways.
44*d5c09012SAndroid Build Coastguard Workermessage Api {
45*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
46*d5c09012SAndroid Build Coastguard Worker    type: "apigateway.googleapis.com/Api"
47*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/global/apis/{api}"
48*d5c09012SAndroid Build Coastguard Worker  };
49*d5c09012SAndroid Build Coastguard Worker
50*d5c09012SAndroid Build Coastguard Worker  // All the possible API states.
51*d5c09012SAndroid Build Coastguard Worker  enum State {
52*d5c09012SAndroid Build Coastguard Worker    // API does not have a state yet.
53*d5c09012SAndroid Build Coastguard Worker    STATE_UNSPECIFIED = 0;
54*d5c09012SAndroid Build Coastguard Worker
55*d5c09012SAndroid Build Coastguard Worker    // API is being created.
56*d5c09012SAndroid Build Coastguard Worker    CREATING = 1;
57*d5c09012SAndroid Build Coastguard Worker
58*d5c09012SAndroid Build Coastguard Worker    // API is active.
59*d5c09012SAndroid Build Coastguard Worker    ACTIVE = 2;
60*d5c09012SAndroid Build Coastguard Worker
61*d5c09012SAndroid Build Coastguard Worker    // API creation failed.
62*d5c09012SAndroid Build Coastguard Worker    FAILED = 3;
63*d5c09012SAndroid Build Coastguard Worker
64*d5c09012SAndroid Build Coastguard Worker    // API is being deleted.
65*d5c09012SAndroid Build Coastguard Worker    DELETING = 4;
66*d5c09012SAndroid Build Coastguard Worker
67*d5c09012SAndroid Build Coastguard Worker    // API is being updated.
68*d5c09012SAndroid Build Coastguard Worker    UPDATING = 5;
69*d5c09012SAndroid Build Coastguard Worker  }
70*d5c09012SAndroid Build Coastguard Worker
71*d5c09012SAndroid Build Coastguard Worker  // Output only. Resource name of the API.
72*d5c09012SAndroid Build Coastguard Worker  // Format: projects/{project}/locations/global/apis/{api}
73*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
74*d5c09012SAndroid Build Coastguard Worker
75*d5c09012SAndroid Build Coastguard Worker  // Output only. Created time.
76*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
77*d5c09012SAndroid Build Coastguard Worker
78*d5c09012SAndroid Build Coastguard Worker  // Output only. Updated time.
79*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
80*d5c09012SAndroid Build Coastguard Worker
81*d5c09012SAndroid Build Coastguard Worker  // Optional. Resource labels to represent user-provided metadata.
82*d5c09012SAndroid Build Coastguard Worker  // Refer to cloud documentation on labels for more details.
83*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/compute/docs/labeling-resources
84*d5c09012SAndroid Build Coastguard Worker  map<string, string> labels = 4 [(google.api.field_behavior) = OPTIONAL];
85*d5c09012SAndroid Build Coastguard Worker
86*d5c09012SAndroid Build Coastguard Worker  // Optional. Display name.
87*d5c09012SAndroid Build Coastguard Worker  string display_name = 5 [(google.api.field_behavior) = OPTIONAL];
88*d5c09012SAndroid Build Coastguard Worker
89*d5c09012SAndroid Build Coastguard Worker  // Optional. Immutable. The name of a Google Managed Service (
90*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/service-infrastructure/docs/glossary#managed). If
91*d5c09012SAndroid Build Coastguard Worker  // not specified, a new Service will automatically be created in the same
92*d5c09012SAndroid Build Coastguard Worker  // project as this API.
93*d5c09012SAndroid Build Coastguard Worker  string managed_service = 7 [
94*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = IMMUTABLE,
95*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = OPTIONAL,
96*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
97*d5c09012SAndroid Build Coastguard Worker      type: "servicemanagement.googleapis.com/ManagedService"
98*d5c09012SAndroid Build Coastguard Worker    }
99*d5c09012SAndroid Build Coastguard Worker  ];
100*d5c09012SAndroid Build Coastguard Worker
101*d5c09012SAndroid Build Coastguard Worker  // Output only. State of the API.
102*d5c09012SAndroid Build Coastguard Worker  State state = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
103*d5c09012SAndroid Build Coastguard Worker}
104*d5c09012SAndroid Build Coastguard Worker
105*d5c09012SAndroid Build Coastguard Worker// An API Configuration is a combination of settings for both the Managed
106*d5c09012SAndroid Build Coastguard Worker// Service and Gateways serving this API Config.
107*d5c09012SAndroid Build Coastguard Workermessage ApiConfig {
108*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
109*d5c09012SAndroid Build Coastguard Worker    type: "apigateway.googleapis.com/ApiConfig"
110*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/global/apis/{api}/configs/{api_config}"
111*d5c09012SAndroid Build Coastguard Worker  };
112*d5c09012SAndroid Build Coastguard Worker
113*d5c09012SAndroid Build Coastguard Worker  // A lightweight description of a file.
114*d5c09012SAndroid Build Coastguard Worker  message File {
115*d5c09012SAndroid Build Coastguard Worker    // The file path (full or relative path). This is typically the path of the
116*d5c09012SAndroid Build Coastguard Worker    // file when it is uploaded.
117*d5c09012SAndroid Build Coastguard Worker    string path = 1;
118*d5c09012SAndroid Build Coastguard Worker
119*d5c09012SAndroid Build Coastguard Worker    // The bytes that constitute the file.
120*d5c09012SAndroid Build Coastguard Worker    bytes contents = 2;
121*d5c09012SAndroid Build Coastguard Worker  }
122*d5c09012SAndroid Build Coastguard Worker
123*d5c09012SAndroid Build Coastguard Worker  // An OpenAPI Specification Document describing an API.
124*d5c09012SAndroid Build Coastguard Worker  message OpenApiDocument {
125*d5c09012SAndroid Build Coastguard Worker    // The OpenAPI Specification document file.
126*d5c09012SAndroid Build Coastguard Worker    File document = 1;
127*d5c09012SAndroid Build Coastguard Worker  }
128*d5c09012SAndroid Build Coastguard Worker
129*d5c09012SAndroid Build Coastguard Worker  // A gRPC service definition.
130*d5c09012SAndroid Build Coastguard Worker  message GrpcServiceDefinition {
131*d5c09012SAndroid Build Coastguard Worker    // Input only. File descriptor set, generated by protoc.
132*d5c09012SAndroid Build Coastguard Worker    //
133*d5c09012SAndroid Build Coastguard Worker    // To generate, use protoc with imports and source info included.
134*d5c09012SAndroid Build Coastguard Worker    // For an example test.proto file, the following command would put the value
135*d5c09012SAndroid Build Coastguard Worker    // in a new file named out.pb.
136*d5c09012SAndroid Build Coastguard Worker    //
137*d5c09012SAndroid Build Coastguard Worker    // $ protoc --include_imports --include_source_info test.proto -o out.pb
138*d5c09012SAndroid Build Coastguard Worker    File file_descriptor_set = 1 [(google.api.field_behavior) = INPUT_ONLY];
139*d5c09012SAndroid Build Coastguard Worker
140*d5c09012SAndroid Build Coastguard Worker    // Optional. Uncompiled proto files associated with the descriptor set, used for
141*d5c09012SAndroid Build Coastguard Worker    // display purposes (server-side compilation is not supported). These
142*d5c09012SAndroid Build Coastguard Worker    // should match the inputs to 'protoc' command used to generate
143*d5c09012SAndroid Build Coastguard Worker    // file_descriptor_set.
144*d5c09012SAndroid Build Coastguard Worker    repeated File source = 2 [(google.api.field_behavior) = OPTIONAL];
145*d5c09012SAndroid Build Coastguard Worker  }
146*d5c09012SAndroid Build Coastguard Worker
147*d5c09012SAndroid Build Coastguard Worker  // All the possible API Config states.
148*d5c09012SAndroid Build Coastguard Worker  enum State {
149*d5c09012SAndroid Build Coastguard Worker    // API Config does not have a state yet.
150*d5c09012SAndroid Build Coastguard Worker    STATE_UNSPECIFIED = 0;
151*d5c09012SAndroid Build Coastguard Worker
152*d5c09012SAndroid Build Coastguard Worker    // API Config is being created and deployed to the API Controller.
153*d5c09012SAndroid Build Coastguard Worker    CREATING = 1;
154*d5c09012SAndroid Build Coastguard Worker
155*d5c09012SAndroid Build Coastguard Worker    // API Config is ready for use by Gateways.
156*d5c09012SAndroid Build Coastguard Worker    ACTIVE = 2;
157*d5c09012SAndroid Build Coastguard Worker
158*d5c09012SAndroid Build Coastguard Worker    // API Config creation failed.
159*d5c09012SAndroid Build Coastguard Worker    FAILED = 3;
160*d5c09012SAndroid Build Coastguard Worker
161*d5c09012SAndroid Build Coastguard Worker    // API Config is being deleted.
162*d5c09012SAndroid Build Coastguard Worker    DELETING = 4;
163*d5c09012SAndroid Build Coastguard Worker
164*d5c09012SAndroid Build Coastguard Worker    // API Config is being updated.
165*d5c09012SAndroid Build Coastguard Worker    UPDATING = 5;
166*d5c09012SAndroid Build Coastguard Worker
167*d5c09012SAndroid Build Coastguard Worker    // API Config settings are being activated in downstream systems.
168*d5c09012SAndroid Build Coastguard Worker    // API Configs in this state cannot be used by Gateways.
169*d5c09012SAndroid Build Coastguard Worker    ACTIVATING = 6;
170*d5c09012SAndroid Build Coastguard Worker  }
171*d5c09012SAndroid Build Coastguard Worker
172*d5c09012SAndroid Build Coastguard Worker  // Output only. Resource name of the API Config.
173*d5c09012SAndroid Build Coastguard Worker  // Format: projects/{project}/locations/global/apis/{api}/configs/{api_config}
174*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
175*d5c09012SAndroid Build Coastguard Worker
176*d5c09012SAndroid Build Coastguard Worker  // Output only. Created time.
177*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
178*d5c09012SAndroid Build Coastguard Worker
179*d5c09012SAndroid Build Coastguard Worker  // Output only. Updated time.
180*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
181*d5c09012SAndroid Build Coastguard Worker
182*d5c09012SAndroid Build Coastguard Worker  // Optional. Resource labels to represent user-provided metadata.
183*d5c09012SAndroid Build Coastguard Worker  // Refer to cloud documentation on labels for more details.
184*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/compute/docs/labeling-resources
185*d5c09012SAndroid Build Coastguard Worker  map<string, string> labels = 4 [(google.api.field_behavior) = OPTIONAL];
186*d5c09012SAndroid Build Coastguard Worker
187*d5c09012SAndroid Build Coastguard Worker  // Optional. Display name.
188*d5c09012SAndroid Build Coastguard Worker  string display_name = 5 [(google.api.field_behavior) = OPTIONAL];
189*d5c09012SAndroid Build Coastguard Worker
190*d5c09012SAndroid Build Coastguard Worker  // Immutable. The Google Cloud IAM Service Account that Gateways serving this config
191*d5c09012SAndroid Build Coastguard Worker  // should use to authenticate to other services. This may either be the
192*d5c09012SAndroid Build Coastguard Worker  // Service Account's email
193*d5c09012SAndroid Build Coastguard Worker  // (`{ACCOUNT_ID}@{PROJECT}.iam.gserviceaccount.com`) or its full resource
194*d5c09012SAndroid Build Coastguard Worker  // name (`projects/{PROJECT}/accounts/{UNIQUE_ID}`). This is most often used
195*d5c09012SAndroid Build Coastguard Worker  // when the service is a GCP resource such as a Cloud Run Service or an
196*d5c09012SAndroid Build Coastguard Worker  // IAP-secured service.
197*d5c09012SAndroid Build Coastguard Worker  string gateway_service_account = 14 [
198*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = IMMUTABLE,
199*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
200*d5c09012SAndroid Build Coastguard Worker      type: "iam.googleapis.com/ServiceAccount"
201*d5c09012SAndroid Build Coastguard Worker    }
202*d5c09012SAndroid Build Coastguard Worker  ];
203*d5c09012SAndroid Build Coastguard Worker
204*d5c09012SAndroid Build Coastguard Worker  // Output only. The ID of the associated Service Config (
205*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/service-infrastructure/docs/glossary#config).
206*d5c09012SAndroid Build Coastguard Worker  string service_config_id = 12 [
207*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = OUTPUT_ONLY,
208*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
209*d5c09012SAndroid Build Coastguard Worker      type: "servicemanagement.googleapis.com/Service"
210*d5c09012SAndroid Build Coastguard Worker    }
211*d5c09012SAndroid Build Coastguard Worker  ];
212*d5c09012SAndroid Build Coastguard Worker
213*d5c09012SAndroid Build Coastguard Worker  // Output only. State of the API Config.
214*d5c09012SAndroid Build Coastguard Worker  State state = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
215*d5c09012SAndroid Build Coastguard Worker
216*d5c09012SAndroid Build Coastguard Worker  // Optional. OpenAPI specification documents. If specified, grpc_services and
217*d5c09012SAndroid Build Coastguard Worker  // managed_service_configs must not be included.
218*d5c09012SAndroid Build Coastguard Worker  repeated OpenApiDocument openapi_documents = 9 [(google.api.field_behavior) = OPTIONAL];
219*d5c09012SAndroid Build Coastguard Worker
220*d5c09012SAndroid Build Coastguard Worker  // Optional. gRPC service definition files. If specified, openapi_documents must
221*d5c09012SAndroid Build Coastguard Worker  // not be included.
222*d5c09012SAndroid Build Coastguard Worker  repeated GrpcServiceDefinition grpc_services = 10 [(google.api.field_behavior) = OPTIONAL];
223*d5c09012SAndroid Build Coastguard Worker
224*d5c09012SAndroid Build Coastguard Worker  // Optional. Service Configuration files. At least one must be included when using gRPC
225*d5c09012SAndroid Build Coastguard Worker  // service definitions. See
226*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/endpoints/docs/grpc/grpc-service-config#service_configuration_overview
227*d5c09012SAndroid Build Coastguard Worker  // for the expected file contents.
228*d5c09012SAndroid Build Coastguard Worker  //
229*d5c09012SAndroid Build Coastguard Worker  // If multiple files are specified, the files are merged with the following
230*d5c09012SAndroid Build Coastguard Worker  // rules:
231*d5c09012SAndroid Build Coastguard Worker  // * All singular scalar fields are merged using "last one wins" semantics in
232*d5c09012SAndroid Build Coastguard Worker  // the order of the files uploaded.
233*d5c09012SAndroid Build Coastguard Worker  // * Repeated fields are concatenated.
234*d5c09012SAndroid Build Coastguard Worker  // * Singular embedded messages are merged using these rules for nested
235*d5c09012SAndroid Build Coastguard Worker  // fields.
236*d5c09012SAndroid Build Coastguard Worker  repeated File managed_service_configs = 11 [(google.api.field_behavior) = OPTIONAL];
237*d5c09012SAndroid Build Coastguard Worker}
238*d5c09012SAndroid Build Coastguard Worker
239*d5c09012SAndroid Build Coastguard Worker// A Gateway is an API-aware HTTP proxy. It performs API-Method and/or
240*d5c09012SAndroid Build Coastguard Worker// API-Consumer specific actions based on an API Config such as authentication,
241*d5c09012SAndroid Build Coastguard Worker// policy enforcement, and backend selection.
242*d5c09012SAndroid Build Coastguard Workermessage Gateway {
243*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
244*d5c09012SAndroid Build Coastguard Worker    type: "apigateway.googleapis.com/Gateway"
245*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/{location}/gateways/{gateway}"
246*d5c09012SAndroid Build Coastguard Worker  };
247*d5c09012SAndroid Build Coastguard Worker
248*d5c09012SAndroid Build Coastguard Worker  // All the possible Gateway states.
249*d5c09012SAndroid Build Coastguard Worker  enum State {
250*d5c09012SAndroid Build Coastguard Worker    // Gateway does not have a state yet.
251*d5c09012SAndroid Build Coastguard Worker    STATE_UNSPECIFIED = 0;
252*d5c09012SAndroid Build Coastguard Worker
253*d5c09012SAndroid Build Coastguard Worker    // Gateway is being created.
254*d5c09012SAndroid Build Coastguard Worker    CREATING = 1;
255*d5c09012SAndroid Build Coastguard Worker
256*d5c09012SAndroid Build Coastguard Worker    // Gateway is running and ready for requests.
257*d5c09012SAndroid Build Coastguard Worker    ACTIVE = 2;
258*d5c09012SAndroid Build Coastguard Worker
259*d5c09012SAndroid Build Coastguard Worker    // Gateway creation failed.
260*d5c09012SAndroid Build Coastguard Worker    FAILED = 3;
261*d5c09012SAndroid Build Coastguard Worker
262*d5c09012SAndroid Build Coastguard Worker    // Gateway is being deleted.
263*d5c09012SAndroid Build Coastguard Worker    DELETING = 4;
264*d5c09012SAndroid Build Coastguard Worker
265*d5c09012SAndroid Build Coastguard Worker    // Gateway is being updated.
266*d5c09012SAndroid Build Coastguard Worker    UPDATING = 5;
267*d5c09012SAndroid Build Coastguard Worker  }
268*d5c09012SAndroid Build Coastguard Worker
269*d5c09012SAndroid Build Coastguard Worker  // Output only. Resource name of the Gateway.
270*d5c09012SAndroid Build Coastguard Worker  // Format: projects/{project}/locations/{location}/gateways/{gateway}
271*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
272*d5c09012SAndroid Build Coastguard Worker
273*d5c09012SAndroid Build Coastguard Worker  // Output only. Created time.
274*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
275*d5c09012SAndroid Build Coastguard Worker
276*d5c09012SAndroid Build Coastguard Worker  // Output only. Updated time.
277*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
278*d5c09012SAndroid Build Coastguard Worker
279*d5c09012SAndroid Build Coastguard Worker  // Optional. Resource labels to represent user-provided metadata.
280*d5c09012SAndroid Build Coastguard Worker  // Refer to cloud documentation on labels for more details.
281*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/compute/docs/labeling-resources
282*d5c09012SAndroid Build Coastguard Worker  map<string, string> labels = 4 [(google.api.field_behavior) = OPTIONAL];
283*d5c09012SAndroid Build Coastguard Worker
284*d5c09012SAndroid Build Coastguard Worker  // Optional. Display name.
285*d5c09012SAndroid Build Coastguard Worker  string display_name = 5 [(google.api.field_behavior) = OPTIONAL];
286*d5c09012SAndroid Build Coastguard Worker
287*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the API Config for this Gateway.
288*d5c09012SAndroid Build Coastguard Worker  // Format: projects/{project}/locations/global/apis/{api}/configs/{apiConfig}
289*d5c09012SAndroid Build Coastguard Worker  string api_config = 6 [
290*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
291*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
292*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/ApiConfig"
293*d5c09012SAndroid Build Coastguard Worker    }
294*d5c09012SAndroid Build Coastguard Worker  ];
295*d5c09012SAndroid Build Coastguard Worker
296*d5c09012SAndroid Build Coastguard Worker  // Output only. The current state of the Gateway.
297*d5c09012SAndroid Build Coastguard Worker  State state = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
298*d5c09012SAndroid Build Coastguard Worker
299*d5c09012SAndroid Build Coastguard Worker  // Output only. The default API Gateway host name of the form
300*d5c09012SAndroid Build Coastguard Worker  // `{gateway_id}-{hash}.{region_code}.gateway.dev`.
301*d5c09012SAndroid Build Coastguard Worker  string default_hostname = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
302*d5c09012SAndroid Build Coastguard Worker}
303*d5c09012SAndroid Build Coastguard Worker
304*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.ListGateways
305*d5c09012SAndroid Build Coastguard Workermessage ListGatewaysRequest {
306*d5c09012SAndroid Build Coastguard Worker  // Required. Parent resource of the Gateway, of the form:
307*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/*`
308*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
309*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
310*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
311*d5c09012SAndroid Build Coastguard Worker      type: "locations.googleapis.com/Location"
312*d5c09012SAndroid Build Coastguard Worker    }
313*d5c09012SAndroid Build Coastguard Worker  ];
314*d5c09012SAndroid Build Coastguard Worker
315*d5c09012SAndroid Build Coastguard Worker  // Page size.
316*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
317*d5c09012SAndroid Build Coastguard Worker
318*d5c09012SAndroid Build Coastguard Worker  // Page token.
319*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
320*d5c09012SAndroid Build Coastguard Worker
321*d5c09012SAndroid Build Coastguard Worker  // Filter.
322*d5c09012SAndroid Build Coastguard Worker  string filter = 4;
323*d5c09012SAndroid Build Coastguard Worker
324*d5c09012SAndroid Build Coastguard Worker  // Order by parameters.
325*d5c09012SAndroid Build Coastguard Worker  string order_by = 5;
326*d5c09012SAndroid Build Coastguard Worker}
327*d5c09012SAndroid Build Coastguard Worker
328*d5c09012SAndroid Build Coastguard Worker// Response message for ApiGatewayService.ListGateways
329*d5c09012SAndroid Build Coastguard Workermessage ListGatewaysResponse {
330*d5c09012SAndroid Build Coastguard Worker  // Gateways.
331*d5c09012SAndroid Build Coastguard Worker  repeated Gateway gateways = 1;
332*d5c09012SAndroid Build Coastguard Worker
333*d5c09012SAndroid Build Coastguard Worker  // Next page token.
334*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
335*d5c09012SAndroid Build Coastguard Worker
336*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
337*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable_locations = 3;
338*d5c09012SAndroid Build Coastguard Worker}
339*d5c09012SAndroid Build Coastguard Worker
340*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.GetGateway
341*d5c09012SAndroid Build Coastguard Workermessage GetGatewayRequest {
342*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the form:
343*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/*/gateways/*`
344*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
345*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
346*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
347*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/Gateway"
348*d5c09012SAndroid Build Coastguard Worker    }
349*d5c09012SAndroid Build Coastguard Worker  ];
350*d5c09012SAndroid Build Coastguard Worker}
351*d5c09012SAndroid Build Coastguard Worker
352*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.CreateGateway
353*d5c09012SAndroid Build Coastguard Workermessage CreateGatewayRequest {
354*d5c09012SAndroid Build Coastguard Worker  // Required. Parent resource of the Gateway, of the form:
355*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/*`
356*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
357*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
358*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
359*d5c09012SAndroid Build Coastguard Worker      type: "locations.googleapis.com/Location"
360*d5c09012SAndroid Build Coastguard Worker    }
361*d5c09012SAndroid Build Coastguard Worker  ];
362*d5c09012SAndroid Build Coastguard Worker
363*d5c09012SAndroid Build Coastguard Worker  // Required. Identifier to assign to the Gateway. Must be unique within scope of
364*d5c09012SAndroid Build Coastguard Worker  // the parent resource.
365*d5c09012SAndroid Build Coastguard Worker  string gateway_id = 2 [(google.api.field_behavior) = REQUIRED];
366*d5c09012SAndroid Build Coastguard Worker
367*d5c09012SAndroid Build Coastguard Worker  // Required. Gateway resource.
368*d5c09012SAndroid Build Coastguard Worker  Gateway gateway = 3 [(google.api.field_behavior) = REQUIRED];
369*d5c09012SAndroid Build Coastguard Worker}
370*d5c09012SAndroid Build Coastguard Worker
371*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.UpdateGateway
372*d5c09012SAndroid Build Coastguard Workermessage UpdateGatewayRequest {
373*d5c09012SAndroid Build Coastguard Worker  // Field mask is used to specify the fields to be overwritten in the
374*d5c09012SAndroid Build Coastguard Worker  // Gateway resource by the update.
375*d5c09012SAndroid Build Coastguard Worker  // The fields specified in the update_mask are relative to the resource, not
376*d5c09012SAndroid Build Coastguard Worker  // the full request. A field will be overwritten if it is in the mask. If the
377*d5c09012SAndroid Build Coastguard Worker  // user does not provide a mask then all fields will be overwritten.
378*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 1;
379*d5c09012SAndroid Build Coastguard Worker
380*d5c09012SAndroid Build Coastguard Worker  // Required. Gateway resource.
381*d5c09012SAndroid Build Coastguard Worker  Gateway gateway = 2 [(google.api.field_behavior) = REQUIRED];
382*d5c09012SAndroid Build Coastguard Worker}
383*d5c09012SAndroid Build Coastguard Worker
384*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.DeleteGateway
385*d5c09012SAndroid Build Coastguard Workermessage DeleteGatewayRequest {
386*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the form:
387*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/*/gateways/*`
388*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
389*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
390*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
391*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/Gateway"
392*d5c09012SAndroid Build Coastguard Worker    }
393*d5c09012SAndroid Build Coastguard Worker  ];
394*d5c09012SAndroid Build Coastguard Worker}
395*d5c09012SAndroid Build Coastguard Worker
396*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.ListApis
397*d5c09012SAndroid Build Coastguard Workermessage ListApisRequest {
398*d5c09012SAndroid Build Coastguard Worker  // Required. Parent resource of the API, of the form:
399*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/global`
400*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
401*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
402*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
403*d5c09012SAndroid Build Coastguard Worker      type: "locations.googleapis.com/Location"
404*d5c09012SAndroid Build Coastguard Worker    }
405*d5c09012SAndroid Build Coastguard Worker  ];
406*d5c09012SAndroid Build Coastguard Worker
407*d5c09012SAndroid Build Coastguard Worker  // Page size.
408*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
409*d5c09012SAndroid Build Coastguard Worker
410*d5c09012SAndroid Build Coastguard Worker  // Page token.
411*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
412*d5c09012SAndroid Build Coastguard Worker
413*d5c09012SAndroid Build Coastguard Worker  // Filter.
414*d5c09012SAndroid Build Coastguard Worker  string filter = 4;
415*d5c09012SAndroid Build Coastguard Worker
416*d5c09012SAndroid Build Coastguard Worker  // Order by parameters.
417*d5c09012SAndroid Build Coastguard Worker  string order_by = 5;
418*d5c09012SAndroid Build Coastguard Worker}
419*d5c09012SAndroid Build Coastguard Worker
420*d5c09012SAndroid Build Coastguard Worker// Response message for ApiGatewayService.ListApis
421*d5c09012SAndroid Build Coastguard Workermessage ListApisResponse {
422*d5c09012SAndroid Build Coastguard Worker  // APIs.
423*d5c09012SAndroid Build Coastguard Worker  repeated Api apis = 1;
424*d5c09012SAndroid Build Coastguard Worker
425*d5c09012SAndroid Build Coastguard Worker  // Next page token.
426*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
427*d5c09012SAndroid Build Coastguard Worker
428*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
429*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable_locations = 3;
430*d5c09012SAndroid Build Coastguard Worker}
431*d5c09012SAndroid Build Coastguard Worker
432*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.GetApi
433*d5c09012SAndroid Build Coastguard Workermessage GetApiRequest {
434*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the form:
435*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/global/apis/*`
436*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
437*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
438*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
439*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/Api"
440*d5c09012SAndroid Build Coastguard Worker    }
441*d5c09012SAndroid Build Coastguard Worker  ];
442*d5c09012SAndroid Build Coastguard Worker}
443*d5c09012SAndroid Build Coastguard Worker
444*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.CreateApi
445*d5c09012SAndroid Build Coastguard Workermessage CreateApiRequest {
446*d5c09012SAndroid Build Coastguard Worker  // Required. Parent resource of the API, of the form:
447*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/global`
448*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
449*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
450*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
451*d5c09012SAndroid Build Coastguard Worker      type: "locations.googleapis.com/Location"
452*d5c09012SAndroid Build Coastguard Worker    }
453*d5c09012SAndroid Build Coastguard Worker  ];
454*d5c09012SAndroid Build Coastguard Worker
455*d5c09012SAndroid Build Coastguard Worker  // Required. Identifier to assign to the API. Must be unique within scope of
456*d5c09012SAndroid Build Coastguard Worker  // the parent resource.
457*d5c09012SAndroid Build Coastguard Worker  string api_id = 2 [(google.api.field_behavior) = REQUIRED];
458*d5c09012SAndroid Build Coastguard Worker
459*d5c09012SAndroid Build Coastguard Worker  // Required. API resource.
460*d5c09012SAndroid Build Coastguard Worker  Api api = 3 [(google.api.field_behavior) = REQUIRED];
461*d5c09012SAndroid Build Coastguard Worker}
462*d5c09012SAndroid Build Coastguard Worker
463*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.UpdateApi
464*d5c09012SAndroid Build Coastguard Workermessage UpdateApiRequest {
465*d5c09012SAndroid Build Coastguard Worker  // Field mask is used to specify the fields to be overwritten in the
466*d5c09012SAndroid Build Coastguard Worker  // Api resource by the update.
467*d5c09012SAndroid Build Coastguard Worker  // The fields specified in the update_mask are relative to the resource, not
468*d5c09012SAndroid Build Coastguard Worker  // the full request. A field will be overwritten if it is in the mask. If the
469*d5c09012SAndroid Build Coastguard Worker  // user does not provide a mask then all fields will be overwritten.
470*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 1;
471*d5c09012SAndroid Build Coastguard Worker
472*d5c09012SAndroid Build Coastguard Worker  // Required. API resource.
473*d5c09012SAndroid Build Coastguard Worker  Api api = 2 [(google.api.field_behavior) = REQUIRED];
474*d5c09012SAndroid Build Coastguard Worker}
475*d5c09012SAndroid Build Coastguard Worker
476*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.DeleteApi
477*d5c09012SAndroid Build Coastguard Workermessage DeleteApiRequest {
478*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the form:
479*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/global/apis/*`
480*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
481*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
482*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
483*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/Api"
484*d5c09012SAndroid Build Coastguard Worker    }
485*d5c09012SAndroid Build Coastguard Worker  ];
486*d5c09012SAndroid Build Coastguard Worker}
487*d5c09012SAndroid Build Coastguard Worker
488*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.ListApiConfigs
489*d5c09012SAndroid Build Coastguard Workermessage ListApiConfigsRequest {
490*d5c09012SAndroid Build Coastguard Worker  // Required. Parent resource of the API Config, of the form:
491*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/global/apis/*`
492*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
493*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
494*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
495*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/Api"
496*d5c09012SAndroid Build Coastguard Worker    }
497*d5c09012SAndroid Build Coastguard Worker  ];
498*d5c09012SAndroid Build Coastguard Worker
499*d5c09012SAndroid Build Coastguard Worker  // Page size.
500*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
501*d5c09012SAndroid Build Coastguard Worker
502*d5c09012SAndroid Build Coastguard Worker  // Page token.
503*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
504*d5c09012SAndroid Build Coastguard Worker
505*d5c09012SAndroid Build Coastguard Worker  // Filter.
506*d5c09012SAndroid Build Coastguard Worker  string filter = 4;
507*d5c09012SAndroid Build Coastguard Worker
508*d5c09012SAndroid Build Coastguard Worker  // Order by parameters.
509*d5c09012SAndroid Build Coastguard Worker  string order_by = 5;
510*d5c09012SAndroid Build Coastguard Worker}
511*d5c09012SAndroid Build Coastguard Worker
512*d5c09012SAndroid Build Coastguard Worker// Response message for ApiGatewayService.ListApiConfigs
513*d5c09012SAndroid Build Coastguard Workermessage ListApiConfigsResponse {
514*d5c09012SAndroid Build Coastguard Worker  // API Configs.
515*d5c09012SAndroid Build Coastguard Worker  repeated ApiConfig api_configs = 1;
516*d5c09012SAndroid Build Coastguard Worker
517*d5c09012SAndroid Build Coastguard Worker  // Next page token.
518*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
519*d5c09012SAndroid Build Coastguard Worker
520*d5c09012SAndroid Build Coastguard Worker  // Locations that could not be reached.
521*d5c09012SAndroid Build Coastguard Worker  repeated string unreachable_locations = 3;
522*d5c09012SAndroid Build Coastguard Worker}
523*d5c09012SAndroid Build Coastguard Worker
524*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.GetApiConfig
525*d5c09012SAndroid Build Coastguard Workermessage GetApiConfigRequest {
526*d5c09012SAndroid Build Coastguard Worker  // Enum to control which fields should be included in the response.
527*d5c09012SAndroid Build Coastguard Worker  enum ConfigView {
528*d5c09012SAndroid Build Coastguard Worker    CONFIG_VIEW_UNSPECIFIED = 0;
529*d5c09012SAndroid Build Coastguard Worker
530*d5c09012SAndroid Build Coastguard Worker    // Do not include configuration source files.
531*d5c09012SAndroid Build Coastguard Worker    BASIC = 1;
532*d5c09012SAndroid Build Coastguard Worker
533*d5c09012SAndroid Build Coastguard Worker    // Include configuration source files.
534*d5c09012SAndroid Build Coastguard Worker    FULL = 2;
535*d5c09012SAndroid Build Coastguard Worker  }
536*d5c09012SAndroid Build Coastguard Worker
537*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the form:
538*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/global/apis/*/configs/*`
539*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
540*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
541*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
542*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/ApiConfig"
543*d5c09012SAndroid Build Coastguard Worker    }
544*d5c09012SAndroid Build Coastguard Worker  ];
545*d5c09012SAndroid Build Coastguard Worker
546*d5c09012SAndroid Build Coastguard Worker  // Specifies which fields of the API Config are returned in the response.
547*d5c09012SAndroid Build Coastguard Worker  // Defaults to `BASIC` view.
548*d5c09012SAndroid Build Coastguard Worker  ConfigView view = 3;
549*d5c09012SAndroid Build Coastguard Worker}
550*d5c09012SAndroid Build Coastguard Worker
551*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.CreateApiConfig
552*d5c09012SAndroid Build Coastguard Workermessage CreateApiConfigRequest {
553*d5c09012SAndroid Build Coastguard Worker  // Required. Parent resource of the API Config, of the form:
554*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/global/apis/*`
555*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
556*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
557*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
558*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/Api"
559*d5c09012SAndroid Build Coastguard Worker    }
560*d5c09012SAndroid Build Coastguard Worker  ];
561*d5c09012SAndroid Build Coastguard Worker
562*d5c09012SAndroid Build Coastguard Worker  // Required. Identifier to assign to the API Config. Must be unique within scope of
563*d5c09012SAndroid Build Coastguard Worker  // the parent resource.
564*d5c09012SAndroid Build Coastguard Worker  string api_config_id = 2 [(google.api.field_behavior) = REQUIRED];
565*d5c09012SAndroid Build Coastguard Worker
566*d5c09012SAndroid Build Coastguard Worker  // Required. API resource.
567*d5c09012SAndroid Build Coastguard Worker  ApiConfig api_config = 3 [(google.api.field_behavior) = REQUIRED];
568*d5c09012SAndroid Build Coastguard Worker}
569*d5c09012SAndroid Build Coastguard Worker
570*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.UpdateApiConfig
571*d5c09012SAndroid Build Coastguard Workermessage UpdateApiConfigRequest {
572*d5c09012SAndroid Build Coastguard Worker  // Field mask is used to specify the fields to be overwritten in the
573*d5c09012SAndroid Build Coastguard Worker  // ApiConfig resource by the update.
574*d5c09012SAndroid Build Coastguard Worker  // The fields specified in the update_mask are relative to the resource, not
575*d5c09012SAndroid Build Coastguard Worker  // the full request. A field will be overwritten if it is in the mask. If the
576*d5c09012SAndroid Build Coastguard Worker  // user does not provide a mask then all fields will be overwritten.
577*d5c09012SAndroid Build Coastguard Worker  google.protobuf.FieldMask update_mask = 1;
578*d5c09012SAndroid Build Coastguard Worker
579*d5c09012SAndroid Build Coastguard Worker  // Required. API Config resource.
580*d5c09012SAndroid Build Coastguard Worker  ApiConfig api_config = 2 [(google.api.field_behavior) = REQUIRED];
581*d5c09012SAndroid Build Coastguard Worker}
582*d5c09012SAndroid Build Coastguard Worker
583*d5c09012SAndroid Build Coastguard Worker// Request message for ApiGatewayService.DeleteApiConfig
584*d5c09012SAndroid Build Coastguard Workermessage DeleteApiConfigRequest {
585*d5c09012SAndroid Build Coastguard Worker  // Required. Resource name of the form:
586*d5c09012SAndroid Build Coastguard Worker  // `projects/*/locations/global/apis/*/configs/*`
587*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
588*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
589*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
590*d5c09012SAndroid Build Coastguard Worker      type: "apigateway.googleapis.com/ApiConfig"
591*d5c09012SAndroid Build Coastguard Worker    }
592*d5c09012SAndroid Build Coastguard Worker  ];
593*d5c09012SAndroid Build Coastguard Worker}
594*d5c09012SAndroid Build Coastguard Worker
595*d5c09012SAndroid Build Coastguard Worker// Represents the metadata of the long-running operation.
596*d5c09012SAndroid Build Coastguard Workermessage OperationMetadata {
597*d5c09012SAndroid Build Coastguard Worker  // Diagnostic information from configuration processing.
598*d5c09012SAndroid Build Coastguard Worker  message Diagnostic {
599*d5c09012SAndroid Build Coastguard Worker    // Location of the diagnostic.
600*d5c09012SAndroid Build Coastguard Worker    string location = 1;
601*d5c09012SAndroid Build Coastguard Worker
602*d5c09012SAndroid Build Coastguard Worker    // The diagnostic message.
603*d5c09012SAndroid Build Coastguard Worker    string message = 2;
604*d5c09012SAndroid Build Coastguard Worker  }
605*d5c09012SAndroid Build Coastguard Worker
606*d5c09012SAndroid Build Coastguard Worker  // Output only. The time the operation was created.
607*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
608*d5c09012SAndroid Build Coastguard Worker
609*d5c09012SAndroid Build Coastguard Worker  // Output only. The time the operation finished running.
610*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
611*d5c09012SAndroid Build Coastguard Worker
612*d5c09012SAndroid Build Coastguard Worker  // Output only. Server-defined resource path for the target of the operation.
613*d5c09012SAndroid Build Coastguard Worker  string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
614*d5c09012SAndroid Build Coastguard Worker
615*d5c09012SAndroid Build Coastguard Worker  // Output only. Name of the verb executed by the operation.
616*d5c09012SAndroid Build Coastguard Worker  string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
617*d5c09012SAndroid Build Coastguard Worker
618*d5c09012SAndroid Build Coastguard Worker  // Output only. Human-readable status of the operation, if any.
619*d5c09012SAndroid Build Coastguard Worker  string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
620*d5c09012SAndroid Build Coastguard Worker
621*d5c09012SAndroid Build Coastguard Worker  // Output only. Identifies whether the user has requested cancellation
622*d5c09012SAndroid Build Coastguard Worker  // of the operation. Operations that have successfully been cancelled
623*d5c09012SAndroid Build Coastguard Worker  // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1,
624*d5c09012SAndroid Build Coastguard Worker  // corresponding to `Code.CANCELLED`.
625*d5c09012SAndroid Build Coastguard Worker  bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
626*d5c09012SAndroid Build Coastguard Worker
627*d5c09012SAndroid Build Coastguard Worker  // Output only. API version used to start the operation.
628*d5c09012SAndroid Build Coastguard Worker  string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
629*d5c09012SAndroid Build Coastguard Worker
630*d5c09012SAndroid Build Coastguard Worker  // Output only. Diagnostics generated during processing of configuration source files.
631*d5c09012SAndroid Build Coastguard Worker  repeated Diagnostic diagnostics = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
632*d5c09012SAndroid Build Coastguard Worker}
633