@googleapis/networkservices 30.0.0 → 31.1.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.
package/build/v1.d.ts CHANGED
@@ -325,21 +325,29 @@ export declare namespace networkservices_v1 {
325
325
  */
326
326
  forwardHeaders?: string[] | null;
327
327
  /**
328
- * Optional. The metadata provided here is included as part of the `metadata_context` (of type `google.protobuf.Struct`) in the `ProcessingRequest` message sent to the extension server. The metadata is available under the namespace `com.google....`. For example: `com.google.lb_traffic_extension.lbtrafficextension1.chain1.ext1`. The following variables are supported in the metadata: `{forwarding_rule_id\}` - substituted with the forwarding rule's fully qualified resource name. This field must not be set for plugin extensions. Setting it results in a validation error. You can set metadata at either the resource level or the extension level. The extension level metadata is recommended because you can pass a different set of metadata through each extension to the backend. This field is subject to following limitations: * The total size of the metadata must be less than 1KiB. * The total number of keys in the metadata must be less than 16. * The length of each key must be less than 64 characters. * The length of each value must be less than 1024 characters. * All values must be strings.
328
+ * Optional. The metadata provided here is included as part of the `metadata_context` (of type `google.protobuf.Struct`) in the `ProcessingRequest` message sent to the extension server. For `AuthzExtension` resources, the metadata is available under the namespace `com.google.authz_extension.`. For other types of extensions, the metadata is available under the namespace `com.google....`. For example: `com.google.lb_traffic_extension.lbtrafficextension1.chain1.ext1`. The following variables are supported in the metadata: `{forwarding_rule_id\}` - substituted with the forwarding rule's fully qualified resource name. This field must not be set for plugin extensions. Setting it results in a validation error. You can set metadata at either the resource level or the extension level. The extension level metadata is recommended because you can pass a different set of metadata through each extension to the backend. This field is subject to following limitations: * The total size of the metadata must be less than 1KiB. * The total number of keys in the metadata must be less than 16. * The length of each key must be less than 64 characters. * The length of each value must be less than 1024 characters. * All values must be strings.
329
329
  */
330
330
  metadata?: {
331
331
  [key: string]: any;
332
332
  } | null;
333
333
  /**
334
- * Required. The name for this extension. The name is logged as part of the HTTP request logs. The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens, and can have a maximum length of 63 characters. Additionally, the first character must be a letter and the last a letter or a number.
334
+ * Optional. The name for this extension. The name is logged as part of the HTTP request logs. The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens, and can have a maximum length of 63 characters. Additionally, the first character must be a letter and the last a letter or a number. This field is required except for AuthzExtension.
335
335
  */
336
336
  name?: string | null;
337
+ /**
338
+ * Optional. Configures the send mode for request body processing. The field can only be set if `supported_events` includes `REQUEST_BODY`. If `supported_events` includes `REQUEST_BODY`, but `request_body_send_mode` is unset, the default value `STREAMED` is used. When this field is set to `FULL_DUPLEX_STREAMED`, `supported_events` must include both `REQUEST_BODY` and `REQUEST_TRAILERS`. This field can be set only for `LbTrafficExtension` and `LbRouteExtension` resources, and only when the `service` field of the extension points to a `BackendService`. Only `FULL_DUPLEX_STREAMED` mode is supported for `LbRouteExtension` resources.
339
+ */
340
+ requestBodySendMode?: string | null;
341
+ /**
342
+ * Optional. Configures the send mode for response processing. If unspecified, the default value `STREAMED` is used. The field can only be set if `supported_events` includes `RESPONSE_BODY`. If `supported_events` includes `RESPONSE_BODY`, but `response_body_send_mode` is unset, the default value `STREAMED` is used. When this field is set to `FULL_DUPLEX_STREAMED`, `supported_events` must include both `RESPONSE_BODY` and `RESPONSE_TRAILERS`. This field can be set only for `LbTrafficExtension` resources, and only when the `service` field of the extension points to a `BackendService`.
343
+ */
344
+ responseBodySendMode?: string | null;
337
345
  /**
338
346
  * Required. The reference to the service that runs the extension. To configure a callout extension, `service` must be a fully-qualified reference to a [backend service](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) in the format: `https://www.googleapis.com/compute/v1/projects/{project\}/regions/{region\}/backendServices/{backendService\}` or `https://www.googleapis.com/compute/v1/projects/{project\}/global/backendServices/{backendService\}`. To configure a plugin extension, `service` must be a reference to a [`WasmPlugin` resource](https://cloud.google.com/service-extensions/docs/reference/rest/v1beta1/projects.locations.wasmPlugins) in the format: `projects/{project\}/locations/{location\}/wasmPlugins/{plugin\}` or `//networkservices.googleapis.com/projects/{project\}/locations/{location\}/wasmPlugins/{wasmPlugin\}`. Plugin extensions are currently supported for the `LbTrafficExtension`, the `LbRouteExtension`, and the `LbEdgeExtension` resources.
339
347
  */
340
348
  service?: string | null;
341
349
  /**
342
- * Optional. A set of events during request or response processing for which this extension is called. For the `LbTrafficExtension` resource, this field is required. For the `LbRouteExtension` resource, this field is optional. If unspecified, `REQUEST_HEADERS` event is assumed as supported. For the `LbEdgeExtension` resource, this field is required and must only contain `REQUEST_HEADERS` event.
350
+ * Optional. A set of events during request or response processing for which this extension is called. For the `LbTrafficExtension` resource, this field is required. For the `LbRouteExtension` resource, this field is optional. If unspecified, `REQUEST_HEADERS` event is assumed as supported. For the `LbEdgeExtension` resource, this field is required and must only contain `REQUEST_HEADERS` event. For the `AuthzExtension` resource, this field is optional. `REQUEST_HEADERS` is the only supported event. If unspecified, `REQUEST_HEADERS` event is assumed as supported.
343
351
  */
344
352
  supportedEvents?: string[] | null;
345
353
  /**
@@ -1111,6 +1119,45 @@ export declare namespace networkservices_v1 {
1111
1119
  */
1112
1120
  pathPrefixRewrite?: string | null;
1113
1121
  }
1122
+ /**
1123
+ * `LbEdgeExtension` is a resource that lets the extension service influence the selection of backend services and Cloud CDN cache keys by modifying request headers.
1124
+ */
1125
+ export interface Schema$LbEdgeExtension {
1126
+ /**
1127
+ * Output only. The timestamp when the resource was created.
1128
+ */
1129
+ createTime?: string | null;
1130
+ /**
1131
+ * Optional. A human-readable description of the resource.
1132
+ */
1133
+ description?: string | null;
1134
+ /**
1135
+ * Required. A set of ordered extension chains that contain the match conditions and extensions to execute. Match conditions for each extension chain are evaluated in sequence for a given request. The first extension chain that has a condition that matches the request is executed. Any subsequent extension chains do not execute. Limited to 5 extension chains per resource.
1136
+ */
1137
+ extensionChains?: Schema$ExtensionChain[];
1138
+ /**
1139
+ * Required. A list of references to the forwarding rules to which this service extension is attached. At least one forwarding rule is required. Only one `LbEdgeExtension` resource can be associated with a forwarding rule.
1140
+ */
1141
+ forwardingRules?: string[] | null;
1142
+ /**
1143
+ * Optional. Set of labels associated with the `LbEdgeExtension` resource. The format must comply with [the requirements for labels](https://cloud.google.com/compute/docs/labeling-resources#requirements) for Google Cloud resources.
1144
+ */
1145
+ labels?: {
1146
+ [key: string]: string;
1147
+ } | null;
1148
+ /**
1149
+ * Required. All forwarding rules referenced by this extension must share the same load balancing scheme. Supported values: `EXTERNAL_MANAGED`.
1150
+ */
1151
+ loadBalancingScheme?: string | null;
1152
+ /**
1153
+ * Required. Identifier. Name of the `LbEdgeExtension` resource in the following format: `projects/{project\}/locations/{location\}/lbEdgeExtensions/{lb_edge_extension\}`.
1154
+ */
1155
+ name?: string | null;
1156
+ /**
1157
+ * Output only. The timestamp when the resource was updated.
1158
+ */
1159
+ updateTime?: string | null;
1160
+ }
1114
1161
  /**
1115
1162
  * `LbRouteExtension` is a resource that lets you control where traffic is routed to for a given request.
1116
1163
  */
@@ -1303,6 +1350,23 @@ export declare namespace networkservices_v1 {
1303
1350
  */
1304
1351
  unreachable?: string[] | null;
1305
1352
  }
1353
+ /**
1354
+ * Message for response to listing `LbEdgeExtension` resources.
1355
+ */
1356
+ export interface Schema$ListLbEdgeExtensionsResponse {
1357
+ /**
1358
+ * The list of `LbEdgeExtension` resources.
1359
+ */
1360
+ lbEdgeExtensions?: Schema$LbEdgeExtension[];
1361
+ /**
1362
+ * A token identifying a page of results that the server returns.
1363
+ */
1364
+ nextPageToken?: string | null;
1365
+ /**
1366
+ * Locations that could not be reached.
1367
+ */
1368
+ unreachable?: string[] | null;
1369
+ }
1306
1370
  /**
1307
1371
  * Message for response to listing `LbRouteExtension` resources.
1308
1372
  */
@@ -1396,6 +1460,10 @@ export declare namespace networkservices_v1 {
1396
1460
  * A list of operations that matches the specified filter in the request.
1397
1461
  */
1398
1462
  operations?: Schema$Operation[];
1463
+ /**
1464
+ * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections e.g. when attempting to list all resources across all supported locations.
1465
+ */
1466
+ unreachable?: string[] | null;
1399
1467
  }
1400
1468
  /**
1401
1469
  * Response returned by the ListServiceBindings method.
@@ -2228,6 +2296,7 @@ export declare namespace networkservices_v1 {
2228
2296
  gateways: Resource$Projects$Locations$Gateways;
2229
2297
  grpcRoutes: Resource$Projects$Locations$Grpcroutes;
2230
2298
  httpRoutes: Resource$Projects$Locations$Httproutes;
2299
+ lbEdgeExtensions: Resource$Projects$Locations$Lbedgeextensions;
2231
2300
  lbRouteExtensions: Resource$Projects$Locations$Lbrouteextensions;
2232
2301
  lbTrafficExtensions: Resource$Projects$Locations$Lbtrafficextensions;
2233
2302
  meshes: Resource$Projects$Locations$Meshes;
@@ -2333,7 +2402,7 @@ export declare namespace networkservices_v1 {
2333
2402
  *
2334
2403
  * // Do the magic
2335
2404
  * const res = await networkservices.projects.locations.list({
2336
- * // Optional. A list of extra location types that should be used as conditions for controlling the visibility of the locations.
2405
+ * // Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.
2337
2406
  * extraLocationTypes: 'placeholder-value',
2338
2407
  * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).
2339
2408
  * filter: 'placeholder-value',
@@ -2380,7 +2449,7 @@ export declare namespace networkservices_v1 {
2380
2449
  }
2381
2450
  export interface Params$Resource$Projects$Locations$List extends StandardParameters {
2382
2451
  /**
2383
- * Optional. A list of extra location types that should be used as conditions for controlling the visibility of the locations.
2452
+ * Optional. Unless explicitly documented otherwise, don't use this unsupported field which is primarily intended for internal usage.
2384
2453
  */
2385
2454
  extraLocationTypes?: string[];
2386
2455
  /**
@@ -5497,6 +5566,453 @@ export declare namespace networkservices_v1 {
5497
5566
  */
5498
5567
  requestBody?: Schema$HttpRoute;
5499
5568
  }
5569
+ export class Resource$Projects$Locations$Lbedgeextensions {
5570
+ context: APIRequestContext;
5571
+ constructor(context: APIRequestContext);
5572
+ /**
5573
+ * Creates a new `LbEdgeExtension` resource in a given project and location.
5574
+ * @example
5575
+ * ```js
5576
+ * // Before running the sample:
5577
+ * // - Enable the API at:
5578
+ * // https://console.developers.google.com/apis/api/networkservices.googleapis.com
5579
+ * // - Login into gcloud by running:
5580
+ * // ```sh
5581
+ * // $ gcloud auth application-default login
5582
+ * // ```
5583
+ * // - Install the npm module by running:
5584
+ * // ```sh
5585
+ * // $ npm install googleapis
5586
+ * // ```
5587
+ *
5588
+ * const {google} = require('googleapis');
5589
+ * const networkservices = google.networkservices('v1');
5590
+ *
5591
+ * async function main() {
5592
+ * const auth = new google.auth.GoogleAuth({
5593
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
5594
+ * scopes: ['https://www.googleapis.com/auth/cloud-platform'],
5595
+ * });
5596
+ *
5597
+ * // Acquire an auth client, and bind it to all future calls
5598
+ * const authClient = await auth.getClient();
5599
+ * google.options({auth: authClient});
5600
+ *
5601
+ * // Do the magic
5602
+ * const res = await networkservices.projects.locations.lbEdgeExtensions.create({
5603
+ * // Required. User-provided ID of the `LbEdgeExtension` resource to be created.
5604
+ * lbEdgeExtensionId: 'placeholder-value',
5605
+ * // Required. The parent resource of the `LbEdgeExtension` resource. Must be in the format `projects/{project\}/locations/{location\}`.
5606
+ * parent: 'projects/my-project/locations/my-location',
5607
+ * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server ignores the second request This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
5608
+ * requestId: 'placeholder-value',
5609
+ *
5610
+ * // Request body metadata
5611
+ * requestBody: {
5612
+ * // request body parameters
5613
+ * // {
5614
+ * // "createTime": "my_createTime",
5615
+ * // "description": "my_description",
5616
+ * // "extensionChains": [],
5617
+ * // "forwardingRules": [],
5618
+ * // "labels": {},
5619
+ * // "loadBalancingScheme": "my_loadBalancingScheme",
5620
+ * // "name": "my_name",
5621
+ * // "updateTime": "my_updateTime"
5622
+ * // }
5623
+ * },
5624
+ * });
5625
+ * console.log(res.data);
5626
+ *
5627
+ * // Example response
5628
+ * // {
5629
+ * // "done": false,
5630
+ * // "error": {},
5631
+ * // "metadata": {},
5632
+ * // "name": "my_name",
5633
+ * // "response": {}
5634
+ * // }
5635
+ * }
5636
+ *
5637
+ * main().catch(e => {
5638
+ * console.error(e);
5639
+ * throw e;
5640
+ * });
5641
+ *
5642
+ * ```
5643
+ *
5644
+ * @param params - Parameters for request
5645
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
5646
+ * @param callback - Optional callback that handles the response.
5647
+ * @returns A promise if used with async/await, or void if used with a callback.
5648
+ */
5649
+ create(params: Params$Resource$Projects$Locations$Lbedgeextensions$Create, options: StreamMethodOptions): Promise<GaxiosResponseWithHTTP2<Readable>>;
5650
+ create(params?: Params$Resource$Projects$Locations$Lbedgeextensions$Create, options?: MethodOptions): Promise<GaxiosResponseWithHTTP2<Schema$Operation>>;
5651
+ create(params: Params$Resource$Projects$Locations$Lbedgeextensions$Create, options: StreamMethodOptions | BodyResponseCallback<Readable>, callback: BodyResponseCallback<Readable>): void;
5652
+ create(params: Params$Resource$Projects$Locations$Lbedgeextensions$Create, options: MethodOptions | BodyResponseCallback<Schema$Operation>, callback: BodyResponseCallback<Schema$Operation>): void;
5653
+ create(params: Params$Resource$Projects$Locations$Lbedgeextensions$Create, callback: BodyResponseCallback<Schema$Operation>): void;
5654
+ create(callback: BodyResponseCallback<Schema$Operation>): void;
5655
+ /**
5656
+ * Deletes the specified `LbEdgeExtension` resource.
5657
+ * @example
5658
+ * ```js
5659
+ * // Before running the sample:
5660
+ * // - Enable the API at:
5661
+ * // https://console.developers.google.com/apis/api/networkservices.googleapis.com
5662
+ * // - Login into gcloud by running:
5663
+ * // ```sh
5664
+ * // $ gcloud auth application-default login
5665
+ * // ```
5666
+ * // - Install the npm module by running:
5667
+ * // ```sh
5668
+ * // $ npm install googleapis
5669
+ * // ```
5670
+ *
5671
+ * const {google} = require('googleapis');
5672
+ * const networkservices = google.networkservices('v1');
5673
+ *
5674
+ * async function main() {
5675
+ * const auth = new google.auth.GoogleAuth({
5676
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
5677
+ * scopes: ['https://www.googleapis.com/auth/cloud-platform'],
5678
+ * });
5679
+ *
5680
+ * // Acquire an auth client, and bind it to all future calls
5681
+ * const authClient = await auth.getClient();
5682
+ * google.options({auth: authClient});
5683
+ *
5684
+ * // Do the magic
5685
+ * const res = await networkservices.projects.locations.lbEdgeExtensions.delete({
5686
+ * // Required. The name of the `LbEdgeExtension` resource to delete. Must be in the format `projects/{project\}/locations/{location\}/lbEdgeExtensions/{lb_edge_extension\}`.
5687
+ * name: 'projects/my-project/locations/my-location/lbEdgeExtensions/my-lbEdgeExtension',
5688
+ * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server ignores the second request This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
5689
+ * requestId: 'placeholder-value',
5690
+ * });
5691
+ * console.log(res.data);
5692
+ *
5693
+ * // Example response
5694
+ * // {
5695
+ * // "done": false,
5696
+ * // "error": {},
5697
+ * // "metadata": {},
5698
+ * // "name": "my_name",
5699
+ * // "response": {}
5700
+ * // }
5701
+ * }
5702
+ *
5703
+ * main().catch(e => {
5704
+ * console.error(e);
5705
+ * throw e;
5706
+ * });
5707
+ *
5708
+ * ```
5709
+ *
5710
+ * @param params - Parameters for request
5711
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
5712
+ * @param callback - Optional callback that handles the response.
5713
+ * @returns A promise if used with async/await, or void if used with a callback.
5714
+ */
5715
+ delete(params: Params$Resource$Projects$Locations$Lbedgeextensions$Delete, options: StreamMethodOptions): Promise<GaxiosResponseWithHTTP2<Readable>>;
5716
+ delete(params?: Params$Resource$Projects$Locations$Lbedgeextensions$Delete, options?: MethodOptions): Promise<GaxiosResponseWithHTTP2<Schema$Operation>>;
5717
+ delete(params: Params$Resource$Projects$Locations$Lbedgeextensions$Delete, options: StreamMethodOptions | BodyResponseCallback<Readable>, callback: BodyResponseCallback<Readable>): void;
5718
+ delete(params: Params$Resource$Projects$Locations$Lbedgeextensions$Delete, options: MethodOptions | BodyResponseCallback<Schema$Operation>, callback: BodyResponseCallback<Schema$Operation>): void;
5719
+ delete(params: Params$Resource$Projects$Locations$Lbedgeextensions$Delete, callback: BodyResponseCallback<Schema$Operation>): void;
5720
+ delete(callback: BodyResponseCallback<Schema$Operation>): void;
5721
+ /**
5722
+ * Gets details of the specified `LbEdgeExtension` resource.
5723
+ * @example
5724
+ * ```js
5725
+ * // Before running the sample:
5726
+ * // - Enable the API at:
5727
+ * // https://console.developers.google.com/apis/api/networkservices.googleapis.com
5728
+ * // - Login into gcloud by running:
5729
+ * // ```sh
5730
+ * // $ gcloud auth application-default login
5731
+ * // ```
5732
+ * // - Install the npm module by running:
5733
+ * // ```sh
5734
+ * // $ npm install googleapis
5735
+ * // ```
5736
+ *
5737
+ * const {google} = require('googleapis');
5738
+ * const networkservices = google.networkservices('v1');
5739
+ *
5740
+ * async function main() {
5741
+ * const auth = new google.auth.GoogleAuth({
5742
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
5743
+ * scopes: ['https://www.googleapis.com/auth/cloud-platform'],
5744
+ * });
5745
+ *
5746
+ * // Acquire an auth client, and bind it to all future calls
5747
+ * const authClient = await auth.getClient();
5748
+ * google.options({auth: authClient});
5749
+ *
5750
+ * // Do the magic
5751
+ * const res = await networkservices.projects.locations.lbEdgeExtensions.get({
5752
+ * // Required. A name of the `LbEdgeExtension` resource to get. Must be in the format `projects/{project\}/locations/{location\}/lbEdgeExtensions/{lb_edge_extension\}`.
5753
+ * name: 'projects/my-project/locations/my-location/lbEdgeExtensions/my-lbEdgeExtension',
5754
+ * });
5755
+ * console.log(res.data);
5756
+ *
5757
+ * // Example response
5758
+ * // {
5759
+ * // "createTime": "my_createTime",
5760
+ * // "description": "my_description",
5761
+ * // "extensionChains": [],
5762
+ * // "forwardingRules": [],
5763
+ * // "labels": {},
5764
+ * // "loadBalancingScheme": "my_loadBalancingScheme",
5765
+ * // "name": "my_name",
5766
+ * // "updateTime": "my_updateTime"
5767
+ * // }
5768
+ * }
5769
+ *
5770
+ * main().catch(e => {
5771
+ * console.error(e);
5772
+ * throw e;
5773
+ * });
5774
+ *
5775
+ * ```
5776
+ *
5777
+ * @param params - Parameters for request
5778
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
5779
+ * @param callback - Optional callback that handles the response.
5780
+ * @returns A promise if used with async/await, or void if used with a callback.
5781
+ */
5782
+ get(params: Params$Resource$Projects$Locations$Lbedgeextensions$Get, options: StreamMethodOptions): Promise<GaxiosResponseWithHTTP2<Readable>>;
5783
+ get(params?: Params$Resource$Projects$Locations$Lbedgeextensions$Get, options?: MethodOptions): Promise<GaxiosResponseWithHTTP2<Schema$LbEdgeExtension>>;
5784
+ get(params: Params$Resource$Projects$Locations$Lbedgeextensions$Get, options: StreamMethodOptions | BodyResponseCallback<Readable>, callback: BodyResponseCallback<Readable>): void;
5785
+ get(params: Params$Resource$Projects$Locations$Lbedgeextensions$Get, options: MethodOptions | BodyResponseCallback<Schema$LbEdgeExtension>, callback: BodyResponseCallback<Schema$LbEdgeExtension>): void;
5786
+ get(params: Params$Resource$Projects$Locations$Lbedgeextensions$Get, callback: BodyResponseCallback<Schema$LbEdgeExtension>): void;
5787
+ get(callback: BodyResponseCallback<Schema$LbEdgeExtension>): void;
5788
+ /**
5789
+ * Lists `LbEdgeExtension` resources in a given project and location.
5790
+ * @example
5791
+ * ```js
5792
+ * // Before running the sample:
5793
+ * // - Enable the API at:
5794
+ * // https://console.developers.google.com/apis/api/networkservices.googleapis.com
5795
+ * // - Login into gcloud by running:
5796
+ * // ```sh
5797
+ * // $ gcloud auth application-default login
5798
+ * // ```
5799
+ * // - Install the npm module by running:
5800
+ * // ```sh
5801
+ * // $ npm install googleapis
5802
+ * // ```
5803
+ *
5804
+ * const {google} = require('googleapis');
5805
+ * const networkservices = google.networkservices('v1');
5806
+ *
5807
+ * async function main() {
5808
+ * const auth = new google.auth.GoogleAuth({
5809
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
5810
+ * scopes: ['https://www.googleapis.com/auth/cloud-platform'],
5811
+ * });
5812
+ *
5813
+ * // Acquire an auth client, and bind it to all future calls
5814
+ * const authClient = await auth.getClient();
5815
+ * google.options({auth: authClient});
5816
+ *
5817
+ * // Do the magic
5818
+ * const res = await networkservices.projects.locations.lbEdgeExtensions.list({
5819
+ * // Optional. Filtering results.
5820
+ * filter: 'placeholder-value',
5821
+ * // Optional. Hint about how to order the results.
5822
+ * orderBy: 'placeholder-value',
5823
+ * // Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.
5824
+ * pageSize: 'placeholder-value',
5825
+ * // Optional. A token identifying a page of results that the server returns.
5826
+ * pageToken: 'placeholder-value',
5827
+ * // Required. The project and location from which the `LbEdgeExtension` resources are listed. These values are specified in the following format: `projects/{project\}/locations/{location\}`.
5828
+ * parent: 'projects/my-project/locations/my-location',
5829
+ * });
5830
+ * console.log(res.data);
5831
+ *
5832
+ * // Example response
5833
+ * // {
5834
+ * // "lbEdgeExtensions": [],
5835
+ * // "nextPageToken": "my_nextPageToken",
5836
+ * // "unreachable": []
5837
+ * // }
5838
+ * }
5839
+ *
5840
+ * main().catch(e => {
5841
+ * console.error(e);
5842
+ * throw e;
5843
+ * });
5844
+ *
5845
+ * ```
5846
+ *
5847
+ * @param params - Parameters for request
5848
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
5849
+ * @param callback - Optional callback that handles the response.
5850
+ * @returns A promise if used with async/await, or void if used with a callback.
5851
+ */
5852
+ list(params: Params$Resource$Projects$Locations$Lbedgeextensions$List, options: StreamMethodOptions): Promise<GaxiosResponseWithHTTP2<Readable>>;
5853
+ list(params?: Params$Resource$Projects$Locations$Lbedgeextensions$List, options?: MethodOptions): Promise<GaxiosResponseWithHTTP2<Schema$ListLbEdgeExtensionsResponse>>;
5854
+ list(params: Params$Resource$Projects$Locations$Lbedgeextensions$List, options: StreamMethodOptions | BodyResponseCallback<Readable>, callback: BodyResponseCallback<Readable>): void;
5855
+ list(params: Params$Resource$Projects$Locations$Lbedgeextensions$List, options: MethodOptions | BodyResponseCallback<Schema$ListLbEdgeExtensionsResponse>, callback: BodyResponseCallback<Schema$ListLbEdgeExtensionsResponse>): void;
5856
+ list(params: Params$Resource$Projects$Locations$Lbedgeextensions$List, callback: BodyResponseCallback<Schema$ListLbEdgeExtensionsResponse>): void;
5857
+ list(callback: BodyResponseCallback<Schema$ListLbEdgeExtensionsResponse>): void;
5858
+ /**
5859
+ * Updates the parameters of the specified `LbEdgeExtension` resource.
5860
+ * @example
5861
+ * ```js
5862
+ * // Before running the sample:
5863
+ * // - Enable the API at:
5864
+ * // https://console.developers.google.com/apis/api/networkservices.googleapis.com
5865
+ * // - Login into gcloud by running:
5866
+ * // ```sh
5867
+ * // $ gcloud auth application-default login
5868
+ * // ```
5869
+ * // - Install the npm module by running:
5870
+ * // ```sh
5871
+ * // $ npm install googleapis
5872
+ * // ```
5873
+ *
5874
+ * const {google} = require('googleapis');
5875
+ * const networkservices = google.networkservices('v1');
5876
+ *
5877
+ * async function main() {
5878
+ * const auth = new google.auth.GoogleAuth({
5879
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
5880
+ * scopes: ['https://www.googleapis.com/auth/cloud-platform'],
5881
+ * });
5882
+ *
5883
+ * // Acquire an auth client, and bind it to all future calls
5884
+ * const authClient = await auth.getClient();
5885
+ * google.options({auth: authClient});
5886
+ *
5887
+ * // Do the magic
5888
+ * const res = await networkservices.projects.locations.lbEdgeExtensions.patch({
5889
+ * // Required. Identifier. Name of the `LbEdgeExtension` resource in the following format: `projects/{project\}/locations/{location\}/lbEdgeExtensions/{lb_edge_extension\}`.
5890
+ * name: 'projects/my-project/locations/my-location/lbEdgeExtensions/my-lbEdgeExtension',
5891
+ * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server ignores the second request This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
5892
+ * requestId: 'placeholder-value',
5893
+ * // Optional. Used to specify the fields to be overwritten in the `LbEdgeExtension` resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not specify a mask, then all fields are overwritten.
5894
+ * updateMask: 'placeholder-value',
5895
+ *
5896
+ * // Request body metadata
5897
+ * requestBody: {
5898
+ * // request body parameters
5899
+ * // {
5900
+ * // "createTime": "my_createTime",
5901
+ * // "description": "my_description",
5902
+ * // "extensionChains": [],
5903
+ * // "forwardingRules": [],
5904
+ * // "labels": {},
5905
+ * // "loadBalancingScheme": "my_loadBalancingScheme",
5906
+ * // "name": "my_name",
5907
+ * // "updateTime": "my_updateTime"
5908
+ * // }
5909
+ * },
5910
+ * });
5911
+ * console.log(res.data);
5912
+ *
5913
+ * // Example response
5914
+ * // {
5915
+ * // "done": false,
5916
+ * // "error": {},
5917
+ * // "metadata": {},
5918
+ * // "name": "my_name",
5919
+ * // "response": {}
5920
+ * // }
5921
+ * }
5922
+ *
5923
+ * main().catch(e => {
5924
+ * console.error(e);
5925
+ * throw e;
5926
+ * });
5927
+ *
5928
+ * ```
5929
+ *
5930
+ * @param params - Parameters for request
5931
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
5932
+ * @param callback - Optional callback that handles the response.
5933
+ * @returns A promise if used with async/await, or void if used with a callback.
5934
+ */
5935
+ patch(params: Params$Resource$Projects$Locations$Lbedgeextensions$Patch, options: StreamMethodOptions): Promise<GaxiosResponseWithHTTP2<Readable>>;
5936
+ patch(params?: Params$Resource$Projects$Locations$Lbedgeextensions$Patch, options?: MethodOptions): Promise<GaxiosResponseWithHTTP2<Schema$Operation>>;
5937
+ patch(params: Params$Resource$Projects$Locations$Lbedgeextensions$Patch, options: StreamMethodOptions | BodyResponseCallback<Readable>, callback: BodyResponseCallback<Readable>): void;
5938
+ patch(params: Params$Resource$Projects$Locations$Lbedgeextensions$Patch, options: MethodOptions | BodyResponseCallback<Schema$Operation>, callback: BodyResponseCallback<Schema$Operation>): void;
5939
+ patch(params: Params$Resource$Projects$Locations$Lbedgeextensions$Patch, callback: BodyResponseCallback<Schema$Operation>): void;
5940
+ patch(callback: BodyResponseCallback<Schema$Operation>): void;
5941
+ }
5942
+ export interface Params$Resource$Projects$Locations$Lbedgeextensions$Create extends StandardParameters {
5943
+ /**
5944
+ * Required. User-provided ID of the `LbEdgeExtension` resource to be created.
5945
+ */
5946
+ lbEdgeExtensionId?: string;
5947
+ /**
5948
+ * Required. The parent resource of the `LbEdgeExtension` resource. Must be in the format `projects/{project\}/locations/{location\}`.
5949
+ */
5950
+ parent?: string;
5951
+ /**
5952
+ * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server ignores the second request This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
5953
+ */
5954
+ requestId?: string;
5955
+ /**
5956
+ * Request body metadata
5957
+ */
5958
+ requestBody?: Schema$LbEdgeExtension;
5959
+ }
5960
+ export interface Params$Resource$Projects$Locations$Lbedgeextensions$Delete extends StandardParameters {
5961
+ /**
5962
+ * Required. The name of the `LbEdgeExtension` resource to delete. Must be in the format `projects/{project\}/locations/{location\}/lbEdgeExtensions/{lb_edge_extension\}`.
5963
+ */
5964
+ name?: string;
5965
+ /**
5966
+ * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server ignores the second request This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
5967
+ */
5968
+ requestId?: string;
5969
+ }
5970
+ export interface Params$Resource$Projects$Locations$Lbedgeextensions$Get extends StandardParameters {
5971
+ /**
5972
+ * Required. A name of the `LbEdgeExtension` resource to get. Must be in the format `projects/{project\}/locations/{location\}/lbEdgeExtensions/{lb_edge_extension\}`.
5973
+ */
5974
+ name?: string;
5975
+ }
5976
+ export interface Params$Resource$Projects$Locations$Lbedgeextensions$List extends StandardParameters {
5977
+ /**
5978
+ * Optional. Filtering results.
5979
+ */
5980
+ filter?: string;
5981
+ /**
5982
+ * Optional. Hint about how to order the results.
5983
+ */
5984
+ orderBy?: string;
5985
+ /**
5986
+ * Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default.
5987
+ */
5988
+ pageSize?: number;
5989
+ /**
5990
+ * Optional. A token identifying a page of results that the server returns.
5991
+ */
5992
+ pageToken?: string;
5993
+ /**
5994
+ * Required. The project and location from which the `LbEdgeExtension` resources are listed. These values are specified in the following format: `projects/{project\}/locations/{location\}`.
5995
+ */
5996
+ parent?: string;
5997
+ }
5998
+ export interface Params$Resource$Projects$Locations$Lbedgeextensions$Patch extends StandardParameters {
5999
+ /**
6000
+ * Required. Identifier. Name of the `LbEdgeExtension` resource in the following format: `projects/{project\}/locations/{location\}/lbEdgeExtensions/{lb_edge_extension\}`.
6001
+ */
6002
+ name?: string;
6003
+ /**
6004
+ * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server ignores the second request This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
6005
+ */
6006
+ requestId?: string;
6007
+ /**
6008
+ * Optional. Used to specify the fields to be overwritten in the `LbEdgeExtension` resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not specify a mask, then all fields are overwritten.
6009
+ */
6010
+ updateMask?: string;
6011
+ /**
6012
+ * Request body metadata
6013
+ */
6014
+ requestBody?: Schema$LbEdgeExtension;
6015
+ }
5500
6016
  export class Resource$Projects$Locations$Lbrouteextensions {
5501
6017
  context: APIRequestContext;
5502
6018
  constructor(context: APIRequestContext);
@@ -7212,13 +7728,16 @@ export declare namespace networkservices_v1 {
7212
7728
  * pageSize: 'placeholder-value',
7213
7729
  * // The standard list page token.
7214
7730
  * pageToken: 'placeholder-value',
7731
+ * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the [ListOperationsResponse.unreachable] field. This can only be `true` when reading across collections e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.
7732
+ * returnPartialSuccess: 'placeholder-value',
7215
7733
  * });
7216
7734
  * console.log(res.data);
7217
7735
  *
7218
7736
  * // Example response
7219
7737
  * // {
7220
7738
  * // "nextPageToken": "my_nextPageToken",
7221
- * // "operations": []
7739
+ * // "operations": [],
7740
+ * // "unreachable": []
7222
7741
  * // }
7223
7742
  * }
7224
7743
  *
@@ -7280,6 +7799,10 @@ export declare namespace networkservices_v1 {
7280
7799
  * The standard list page token.
7281
7800
  */
7282
7801
  pageToken?: string;
7802
+ /**
7803
+ * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the [ListOperationsResponse.unreachable] field. This can only be `true` when reading across collections e.g. when `parent` is set to `"projects/example/locations/-"`. This field is not by default supported and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.
7804
+ */
7805
+ returnPartialSuccess?: boolean;
7283
7806
  }
7284
7807
  export class Resource$Projects$Locations$Servicebindings {
7285
7808
  context: APIRequestContext;