diff --git a/discovery/androidmanagement-v1.json b/discovery/androidmanagement-v1.json index 3fcdeaeb05..5471118242 100644 --- a/discovery/androidmanagement-v1.json +++ b/discovery/androidmanagement-v1.json @@ -1265,7 +1265,7 @@ } } }, - "revision": "20261014", + "revision": "20261021", "rootUrl": "https://androidmanagement.googleapis.com/", "schemas": { "AdbShellCommandEvent": { @@ -3568,7 +3568,7 @@ "type": "string" }, "configureWifi": { - "description": "Controls Wi-Fi configuring privileges. Based on the option set, user will have either full or limited or no control in configuring Wi-Fi networks.", + "description": "Optional. Controls Wi-Fi configuring privileges. Based on the option set, user will have either full or limited or no control in configuring Wi-Fi networks.", "enum": [ "CONFIGURE_WIFI_UNSPECIFIED", "ALLOW_CONFIGURING_WIFI", @@ -3592,7 +3592,7 @@ "description": "Optional. The global private DNS settings." }, "tetheringSettings": { - "description": "Controls tethering settings. Based on the value set, the user is partially or fully disallowed from using different forms of tethering.", + "description": "Optional. Controls tethering settings. Based on the value set, the user is partially or fully disallowed from using different forms of tethering.", "enum": [ "TETHERING_SETTINGS_UNSPECIFIED", "ALLOW_ALL_TETHERING", @@ -3608,7 +3608,7 @@ "type": "string" }, "usbDataAccess": { - "description": "Controls what files and/or data can be transferred via USB. Supported only on company-owned devices.", + "description": "Optional. Controls what files and/or data can be transferred via USB. Supported only on company-owned devices.", "enum": [ "USB_DATA_ACCESS_UNSPECIFIED", "ALLOW_USB_DATA_TRANSFER", @@ -3624,7 +3624,7 @@ "type": "string" }, "wifiDirectSettings": { - "description": "Controls configuring and using Wi-Fi direct settings. Supported on company-owned devices running Android 13 and above.", + "description": "Optional. Controls configuring and using Wi-Fi direct settings. Supported on company-owned devices running Android 13 and above.", "enum": [ "WIFI_DIRECT_SETTINGS_UNSPECIFIED", "ALLOW_WIFI_DIRECT", @@ -3643,7 +3643,7 @@ }, "wifiSsidPolicy": { "$ref": "WifiSsidPolicy", - "description": "Restrictions on which Wi-Fi SSIDs the device can connect to. Note that this does not affect which networks can be configured on the device. Supported on company-owned devices running Android 13 and above." + "description": "Optional. Restrictions on which Wi-Fi SSIDs the device can connect to. Note that this does not affect which networks can be configured on the device. Supported on company-owned devices running Android 13 and above." } }, "type": "object" @@ -5559,7 +5559,8 @@ "NEW_ACCOUNT_NOT_IN_ENTERPRISE", "DEFAULT_APPLICATION_SETTING_UNSUPPORTED_SCOPES", "DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE", - "PRIVATE_DNS_HOST_NOT_SERVING" + "PRIVATE_DNS_HOST_NOT_SERVING", + "USER_NOT_UNLOCKED" ], "enumDescriptions": [ "Specific non-compliance reason is not specified. Fields in specific_non_compliance_context are not set.", @@ -5576,7 +5577,8 @@ "Work account added by the user is not part of the enterprise. nonComplianceReason is set to USER_ACTION.", "The default application setting is applied to the scopes that are not supported by the management mode, even if the management mode itself is supported for the app type (e.g., a policy with DEFAULT_BROWSER app type and SCOPE_PERSONAL_PROFILE list sent to a fully managed device results in the scopes being inapplicable for the management mode). If the management mode is not supported for the app type, a NonComplianceDetail with MANAGEMENT_MODE is reported, without a specificNonComplianceReason.nonComplianceReason is set to MANAGEMENT_MODE.", "The default application setting failed to apply for a specific scope. defaultApplicationContext is set. nonComplianceReason is set to INVALID_VALUE or APP_NOT_INSTALLED.", - "The specified host for private DNS is a valid hostname but was found to not be a private DNS server. nonComplianceReason is set to INVALID_VALUE." + "The specified host for private DNS is a valid hostname but was found to not be a private DNS server. nonComplianceReason is set to INVALID_VALUE.", + "The user's device is not unlocked (in direct boot mode), preventing the application of the policy. nonComplianceReason is set to PENDING." ], "type": "string" } @@ -6389,11 +6391,11 @@ }, "deviceConnectivityManagement": { "$ref": "DeviceConnectivityManagement", - "description": "Covers controls for device connectivity such as Wi-Fi, USB data access, keyboard/mouse connections, and more." + "description": "Optional. Covers controls for device connectivity such as Wi-Fi, USB data access, keyboard/mouse connections, and more." }, "deviceOwnerLockScreenInfo": { "$ref": "UserFacingMessage", - "description": "The device owner information to be shown on the lock screen." + "description": "Optional. The device owner information to be shown on the lock screen." }, "deviceRadioState": { "$ref": "DeviceRadioState", @@ -6787,7 +6789,7 @@ }, "systemUpdate": { "$ref": "SystemUpdate", - "description": "The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the update window will automatically apply to Play app updates as well.Note: Google Play system updates (https://source.android.com/docs/core/ota/modular-system) (also called Mainline updates) are automatically downloaded and require a device reboot to be installed. Refer to the mainline section in Manage system updates (https://developer.android.com/work/dpc/system-updates#mainline) for further details." + "description": "The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the update window will automatically apply to Play app updates as well.Note: Google Play system updates (https://source.android.com/docs/core/ota/modular-system) (also called Mainline updates) are automatically downloaded and require a device reboot to be installed. Refer to the mainline section in Manage system updates (https://developer.android.com/work/dpc/system-updates#mainline) for further details.If this policy is set, it takes precedence over unifiedUpdatePolicy for OEM OS updates. For more information, see unifiedUpdatePolicy." }, "tetheringConfigDisabled": { "deprecated": true, @@ -8348,7 +8350,7 @@ "id": "WifiSsidPolicy", "properties": { "wifiSsidPolicyType": { - "description": "Type of the Wi-Fi SSID policy to be applied.", + "description": "Optional. Type of the Wi-Fi SSID policy to be applied.", "enum": [ "WIFI_SSID_POLICY_TYPE_UNSPECIFIED", "WIFI_SSID_DENYLIST", diff --git a/discovery/androidpublisher-v3.json b/discovery/androidpublisher-v3.json index 464fd3f42c..f9348dfc8d 100644 --- a/discovery/androidpublisher-v3.json +++ b/discovery/androidpublisher-v3.json @@ -5970,7 +5970,7 @@ } } }, - "revision": "20260924", + "revision": "20261021", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { "Abi": { @@ -9605,7 +9605,8 @@ "description": "Default price. Cannot be zero, as in-app products are never free. Always in the developer's Checkout merchant currency." }, "gracePeriod": { - "description": "Grace period of the subscription, specified in ISO 8601 format. Allows developers to give their subscribers a grace period when the payment for the new recurrence period is declined. Acceptable values are P0D (zero days), P3D (three days), P7D (seven days), P14D (14 days), and P30D (30 days).", + "deprecated": true, + "description": "Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead.", "type": "string" }, "listings": { @@ -9637,10 +9638,15 @@ "managedUser", "subscription" ], + "enumDeprecated": [ + false, + false, + true + ], "enumDescriptions": [ "Unspecified purchase type.", "The default product type - one time purchase.", - "In-app product with a recurring period." + "Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead." ], "type": "string" }, @@ -9663,15 +9669,18 @@ "type": "string" }, "subscriptionPeriod": { - "description": "Subscription period, specified in ISO 8601 format. Acceptable values are P1W (one week), P1M (one month), P3M (three months), P6M (six months), and P1Y (one year).", + "deprecated": true, + "description": "Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead.", "type": "string" }, "subscriptionTaxesAndComplianceSettings": { "$ref": "SubscriptionTaxAndComplianceSettings", - "description": "Details about taxes and legal compliance. Only applicable to subscription products." + "deprecated": true, + "description": "Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead." }, "trialPeriod": { - "description": "Trial period, specified in ISO 8601 format. Acceptable values are anything between P7D (seven days) and P999D (999 days).", + "deprecated": true, + "description": "Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead.", "type": "string" } }, @@ -9682,7 +9691,8 @@ "id": "InAppProductListing", "properties": { "benefits": { - "description": "Localized entitlement benefits for a subscription.", + "deprecated": true, + "description": "Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead.", "items": { "type": "string" }, diff --git a/discovery/apigateway-v1.json b/discovery/apigateway-v1.json index b5e0d9d5a8..ce78ac9e34 100644 --- a/discovery/apigateway-v1.json +++ b/discovery/apigateway-v1.json @@ -1094,7 +1094,7 @@ } } }, - "revision": "20260909", + "revision": "20261014", "rootUrl": "https://apigateway.googleapis.com/", "schemas": { "ApigatewayApi": { @@ -1413,16 +1413,16 @@ "type": "string" }, "effectiveStreamingMode": { - "description": "Output only. The streaming mode this gateway is actually served with, which the service resolves at creation from `streaming_mode`, the referenced API Config, and the platform default at the time. Read this rather than `streaming_mode` to determine whether a gateway supports response streaming.", + "description": "Output only. The streaming mode this gateway is actually served with, which the service resolves at creation from `streaming_mode`, the referenced API Config, and the platform default at the time. Read this rather than `streaming_mode` to determine whether a gateway supports streaming.", "enum": [ "EFFECTIVE_STREAMING_MODE_UNSPECIFIED", "EFFECTIVE_STREAMING_MODE_DISABLED", "EFFECTIVE_STREAMING_MODE_ENABLED" ], "enumDescriptions": [ - "The service has not resolved a mode. Every gateway returned by `GetGateway` and `ListGateways` carries a resolved mode, so this value should not be returned under normal circumstances.", - "The gateway does not support response streaming.", - "The gateway supports response streaming." + "Indicates that the service has not resolved a mode. Every gateway returned by `GetGateway` and `ListGateways` carries a resolved mode, so this value should not be returned under normal circumstances.", + "Indicates that the gateway does not support streaming.", + "Indicates that the gateway supports streaming." ], "readOnly": true, "type": "string" @@ -1461,14 +1461,14 @@ "type": "string" }, "streamingMode": { - "description": "Optional. Immutable. Requests response streaming for a new gateway. An attempt to change it on update is rejected. If unset, the service selects the mode. This field records only what was requested and is never modified by the service; read `effective_streaming_mode` for the mode the gateway is served with.", + "description": "Optional. Immutable. Requests streaming for a new gateway. An attempt to change it on update is rejected. If unset, the service selects the mode. This field records only what was requested and is never modified by the service; read `effective_streaming_mode` for the mode the gateway is served with.", "enum": [ "STREAMING_MODE_UNSPECIFIED", "STREAMING_MODE_ENABLED" ], "enumDescriptions": [ - "The service selects the streaming mode.", - "Streaming is enabled. The gateway supports response streaming: server-sent events, HTTP chunked transfer, WebSockets, and gRPC/HTTP2 bidirectional streaming." + "Lets the service select the streaming mode.", + "Enables streaming. The gateway supports Server-Sent Events (SSE), HTTP/2 streaming, HTTP chunked transfer, WebSockets, and gRPC bidirectional streaming. The API config's backend `deadline` field governs how long a request (unary or streaming) may run. Enabling streaming on a gateway does not change how the `deadline` field behaves on an SSE or chunked-transfer path. The deadline remains a wall-clock bound on the complete response, so a stream is cut once the deadline elapses regardless of how much data it is sending. The default is 15 seconds and the maximum is 3,600 seconds. On gRPC streaming and WebSockets, `deadline` bounds the gap between messages instead: default 300 seconds; set `deadline` to change it, up to 3,600 seconds. On WebSockets, a `deadline` of less than 300 seconds is ignored and a 300-second minimum applies. The maximum total request duration is always 3,600 seconds, not configurable." ], "type": "string" }, diff --git a/discovery/apigateway-v1beta.json b/discovery/apigateway-v1beta.json index 78835b2c62..2992f113e5 100644 --- a/discovery/apigateway-v1beta.json +++ b/discovery/apigateway-v1beta.json @@ -1094,7 +1094,7 @@ } } }, - "revision": "20260909", + "revision": "20261014", "rootUrl": "https://apigateway.googleapis.com/", "schemas": { "ApigatewayApi": { @@ -1429,16 +1429,16 @@ "type": "string" }, "effectiveStreamingMode": { - "description": "Output only. The streaming mode this gateway is actually served with, which the service resolves at creation from `streaming_mode`, the referenced API Config, and the platform default at the time. Read this rather than `streaming_mode` to determine whether a gateway supports response streaming.", + "description": "Output only. The streaming mode this gateway is actually served with, which the service resolves at creation from `streaming_mode`, the referenced API Config, and the platform default at the time. Read this rather than `streaming_mode` to determine whether a gateway supports streaming.", "enum": [ "EFFECTIVE_STREAMING_MODE_UNSPECIFIED", "EFFECTIVE_STREAMING_MODE_DISABLED", "EFFECTIVE_STREAMING_MODE_ENABLED" ], "enumDescriptions": [ - "The service has not resolved a mode. Every gateway returned by `GetGateway` and `ListGateways` carries a resolved mode, so this value should not be returned under normal circumstances.", - "The gateway does not support response streaming.", - "The gateway supports response streaming." + "Indicates that the service has not resolved a mode. Every gateway returned by `GetGateway` and `ListGateways` carries a resolved mode, so this value should not be returned under normal circumstances.", + "Indicates that the gateway does not support streaming.", + "Indicates that the gateway supports streaming." ], "readOnly": true, "type": "string" @@ -1477,14 +1477,14 @@ "type": "string" }, "streamingMode": { - "description": "Optional. Immutable. Requests response streaming for a new gateway. An attempt to change it on update is rejected. If unset, the service selects the mode. This field records only what was requested and is never modified by the service; read `effective_streaming_mode` for the mode the gateway is served with.", + "description": "Optional. Immutable. Requests streaming for a new gateway. An attempt to change it on update is rejected. If unset, the service selects the mode. This field records only what was requested and is never modified by the service; read `effective_streaming_mode` for the mode the gateway is served with.", "enum": [ "STREAMING_MODE_UNSPECIFIED", "STREAMING_MODE_ENABLED" ], "enumDescriptions": [ - "The service selects the streaming mode.", - "Streaming is enabled. The gateway supports response streaming: server-sent events, HTTP chunked transfer, WebSockets, and gRPC/HTTP2 bidirectional streaming." + "Lets the service select the streaming mode.", + "Enables streaming. The gateway supports Server-Sent Events (SSE), HTTP/2 streaming, HTTP chunked transfer, WebSockets, and gRPC bidirectional streaming. The API config's backend `deadline` field governs how long a request (unary or streaming) may run. Enabling streaming on a gateway does not change how the `deadline` field behaves on an SSE or chunked-transfer path. The deadline remains a wall-clock bound on the complete response, so a stream is cut once the deadline elapses regardless of how much data it is sending. The default is 15 seconds and the maximum is 3,600 seconds. On gRPC streaming and WebSockets, `deadline` bounds the gap between messages instead: default 300 seconds; set `deadline` to change it, up to 3,600 seconds. On WebSockets, a `deadline` of less than 300 seconds is ignored and a 300-second minimum applies. The maximum total request duration is always 3,600 seconds, not configurable." ], "type": "string" }, diff --git a/discovery/auditmanager-v1.json b/discovery/auditmanager-v1.json index 8c3350f4cf..4b9e505ccc 100644 --- a/discovery/auditmanager-v1.json +++ b/discovery/auditmanager-v1.json @@ -24,6 +24,11 @@ "endpointUrl": "https://auditmanager.us-central1.rep.googleapis.com/", "location": "us-central1" }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://auditmanager.me-central2.rep.googleapis.com/", + "location": "me-central2" + }, { "description": "Regional Endpoint", "endpointUrl": "https://auditmanager.europe-west1.rep.googleapis.com/", @@ -33,11 +38,6 @@ "description": "Regional Endpoint", "endpointUrl": "https://auditmanager.asia-south1.rep.googleapis.com/", "location": "asia-south1" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://auditmanager.me-central2.rep.googleapis.com/", - "location": "me-central2" } ], "fullyEncodeReservedExpansion": true, @@ -1890,7 +1890,7 @@ } } }, - "revision": "20261007", + "revision": "20261016", "rootUrl": "https://auditmanager.googleapis.com/", "schemas": { "AuditReport": { diff --git a/discovery/authorizedbuyersmarketplace-v1alpha.json b/discovery/authorizedbuyersmarketplace-v1alpha.json index 15fbc7cbb3..788d5627fa 100644 --- a/discovery/authorizedbuyersmarketplace-v1alpha.json +++ b/discovery/authorizedbuyersmarketplace-v1alpha.json @@ -1802,11 +1802,43 @@ "scopes": [ "https://www.googleapis.com/auth/authorized-buyers-marketplace" ] + }, + "search": { + "description": "Searches for media planner accounts matching the given DSP seat ID. For curators, this will return all matching media planners that have accepted curator terms.", + "flatPath": "v1alpha/mediaPlanners:search", + "httpMethod": "GET", + "id": "authorizedbuyersmarketplace.mediaPlanners.search", + "parameterOrder": [], + "parameters": { + "dspSeatId": { + "description": "Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in `SearchMediaPlannersResponse.nextPageToken`.", + "location": "query", + "type": "string" + } + }, + "path": "v1alpha/mediaPlanners:search", + "response": { + "$ref": "SearchMediaPlannersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/authorized-buyers-marketplace" + ] } } } }, - "revision": "20260828", + "revision": "20261020", "rootUrl": "https://authorizedbuyersmarketplace.googleapis.com/", "schemas": { "AcceptProposalRequest": { @@ -4076,6 +4108,24 @@ }, "type": "object" }, + "SearchMediaPlannersResponse": { + "description": "A response containing media planner account information from a search.", + "id": "SearchMediaPlannersResponse", + "properties": { + "mediaPlanners": { + "description": "List of media planners matching the search criteria.", + "items": { + "$ref": "MediaPlanner" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token which can be passed to a subsequent call to the `SearchMediaPlanners` method to retrieve the next page of results in SearchMediaPlannersRequest.pageToken.", + "type": "string" + } + }, + "type": "object" + }, "SendRfpRequest": { "description": "Request to send an RFP. All fields in this request are proposed to publisher and subject to changes by publisher during later negotiation.", "id": "SendRfpRequest", diff --git a/discovery/authorizedbuyersmarketplace-v1beta.json b/discovery/authorizedbuyersmarketplace-v1beta.json index f8a8fdef65..9df37e9498 100644 --- a/discovery/authorizedbuyersmarketplace-v1beta.json +++ b/discovery/authorizedbuyersmarketplace-v1beta.json @@ -513,11 +513,43 @@ "scopes": [ "https://www.googleapis.com/auth/authorized-buyers-marketplace" ] + }, + "search": { + "description": "Searches for media planner accounts matching the given DSP seat ID. For curators, this will return all matching media planners that have accepted curator terms.", + "flatPath": "v1beta/mediaPlanners:search", + "httpMethod": "GET", + "id": "authorizedbuyersmarketplace.mediaPlanners.search", + "parameterOrder": [], + "parameters": { + "dspSeatId": { + "description": "Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in `SearchMediaPlannersResponse.nextPageToken`.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta/mediaPlanners:search", + "response": { + "$ref": "SearchMediaPlannersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/authorized-buyers-marketplace" + ] } } } }, - "revision": "20260828", + "revision": "20261020", "rootUrl": "https://authorizedbuyersmarketplace.googleapis.com/", "schemas": { "AccessControlSettings": { @@ -1222,6 +1254,24 @@ }, "type": "object" }, + "SearchMediaPlannersResponse": { + "description": "A response containing media planner account information from a search.", + "id": "SearchMediaPlannersResponse", + "properties": { + "mediaPlanners": { + "description": "List of media planners matching the search criteria.", + "items": { + "$ref": "MediaPlanner" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token which can be passed to a subsequent call to the `SearchMediaPlanners` method to retrieve the next page of results in SearchMediaPlannersRequest.pageToken.", + "type": "string" + } + }, + "type": "object" + }, "StringTargetingDimension": { "description": "Generic targeting with string values.", "id": "StringTargetingDimension", diff --git a/discovery/backupdr-v1.json b/discovery/backupdr-v1.json index 2f54c8e0d7..c590076401 100644 --- a/discovery/backupdr-v1.json +++ b/discovery/backupdr-v1.json @@ -569,6 +569,455 @@ } }, "resources": { + "appliedAutoProtectionPolicies": { + "methods": { + "list": { + "description": "Lists AppliedAutoProtectionPolicies in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/appliedAutoProtectionPolicies", + "httpMethod": "GET", + "id": "backupdr.projects.locations.appliedAutoProtectionPolicies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter expression that filters resources listed in the response.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. An expression that sorts the results in the response.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of applied policies to return in a single page. The maximum value is 1000; values above 1000 will be coerced to 1000. If unspecified or set to 0, a default page size of 500 will be used.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListAppliedAutoProtectionPolicies` call.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location for which to retrieve the list of applied policies. Format: projects/{project}/locations/{location}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/appliedAutoProtectionPolicies", + "response": { + "$ref": "ListAppliedAutoProtectionPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "autoProtectionPolicies": { + "methods": { + "create": { + "description": "Creates a new AutoProtectionPolicy in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies", + "httpMethod": "POST", + "id": "backupdr.projects.locations.autoProtectionPolicies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "autoProtectionPolicyId": { + "description": "Required. The ID to use for the policy. This will become the final component of the policy's resource name.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource where this policy will be created. Format: projects/{project}/locations/{location}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/autoProtectionPolicies", + "request": { + "$ref": "AutoProtectionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single AutoProtectionPolicy.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}", + "httpMethod": "DELETE", + "id": "backupdr.projects.locations.autoProtectionPolicies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "The current etag of the autoprotectionpolicy. If an etag is provided and does not match the current etag of the connection, deletion will be blocked.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the policy to delete. Format: projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single AutoProtectionPolicy.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}", + "httpMethod": "GET", + "id": "backupdr.projects.locations.autoProtectionPolicies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the policy to retrieve. Format: projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "AutoProtectionPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists AutoProtectionPolicies for a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies", + "httpMethod": "GET", + "id": "backupdr.projects.locations.autoProtectionPolicies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter expression that filters resources listed in the response. The following fields are filterable:", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. An expression that sorts the results in the response. The following fields are sortable:", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of policies to return in a single page. If unspecified, a server-default value will be used.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListAutoProtectionPolicies` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location for which to retrieve the list of policies. Format: projects/{project}/locations/{location}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/autoProtectionPolicies", + "response": { + "$ref": "ListAutoProtectionPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single AutoProtectionPolicy.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}", + "httpMethod": "PATCH", + "id": "backupdr.projects.locations.autoProtectionPolicies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "AutoProtectionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "bindings": { + "methods": { + "create": { + "description": "Creates a new AutoProtectionPolicyBinding in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}/bindings", + "httpMethod": "POST", + "id": "backupdr.projects.locations.autoProtectionPolicies.bindings.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "autoProtectionPolicyBindingId": { + "description": "Required. The ID to use for the binding. This will become the final component of the binding's resource name.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource where this binding will be created. Format: projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/bindings", + "request": { + "$ref": "AutoProtectionPolicyBinding" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns the auto protection policy binding read from the CCFE tables.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}/bindings/{bindingsId}", + "httpMethod": "GET", + "id": "backupdr.projects.locations.autoProtectionPolicies.bindings.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the binding to retrieve. Format: projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+/bindings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "AutoProtectionPolicyBinding" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "initiateDelete": { + "description": "Initiates delete for AutoProtectionPolicy Binding", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}/bindings/{bindingsId}:initiateDelete", + "httpMethod": "POST", + "id": "backupdr.projects.locations.autoProtectionPolicies.bindings.initiateDelete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the binding to delete. Format: projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+/bindings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:initiateDelete", + "request": { + "$ref": "InitiateDeleteAutoProtectionPolicyBindingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Returns the auto protection policy bindings read from the CCFE tables.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}/bindings", + "httpMethod": "GET", + "id": "backupdr.projects.locations.autoProtectionPolicies.bindings.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter expression that filters resources listed in the response. The following fields are filterable:", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. An expression that sorts the results in the response. The following fields are sortable:", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of policies to return in a single page is 500. If unspecified, a server-default value will be used.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token, received from a previous `ListAutoProtectionPolicies` call. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location for which to retrieve the list of policies. Format: projects/{project}/locations/{location}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/bindings", + "response": { + "$ref": "ListAutoProtectionPolicyBindingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "matchingResources": { + "methods": { + "get": { + "description": "Gets details of a single Binding Matching Resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}/bindings/{bindingsId}/matchingResources/{matchingResourcesId}", + "httpMethod": "GET", + "id": "backupdr.projects.locations.autoProtectionPolicies.bindings.matchingResources.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the matching resource to retrieve. Format: projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}/matchingResources/{matching_resource}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+/bindings/[^/]+/matchingResources/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "BindingMatchingResource" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Binding Matching Resources for a given AutoProtectionPolicyBinding.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/autoProtectionPolicies/{autoProtectionPoliciesId}/bindings/{bindingsId}/matchingResources", + "httpMethod": "GET", + "id": "backupdr.projects.locations.autoProtectionPolicies.bindings.matchingResources.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Field match expression used to filter the results.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Field by which to sort the results.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of `BindingMatchingResources` to return in a single response. The default page size is 100 and maximum page size is 200. Note that the response may include a partial list and a caller should only rely on the response's next_page_token to determine if there are more instances left to be queried.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The value of next_page_token received from a previous `ListBindingMatchingResources` call. Provide this to retrieve the subsequent page in a multi-page list of results. When paginating, all other parameters provided to `ListBindingMatchingResources` must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project, location, auto protection policy and binding for which to retrieve `BindingMatchingResources` information. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`. In Google Cloud Backup and DR, locations map to Google Cloud regions, for example **us-central1**.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/autoProtectionPolicies/[^/]+/bindings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/matchingResources", + "response": { + "$ref": "ListBindingMatchingResourcesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-backupdr", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, "backupPlanAssociations": { "methods": { "create": { @@ -619,6 +1068,11 @@ "name" ], "parameters": { + "autoProtectionPolicyBinding": { + "description": "Optional. This field is exclusively used by Backup and DR's auto-protection feature. The resource name of the `AutoProtectionPolicyBinding` that triggered the deletion of this association. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{policy}/bindings/{binding}`.", + "location": "query", + "type": "string" + }, "name": { "description": "Required. Name of the backup plan association resource, in the format `projects/{project}/locations/{location}/backupPlanAssociations/{backupPlanAssociationId}`", "location": "path", @@ -2725,7 +3179,7 @@ } } }, - "revision": "20261006", + "revision": "20261014", "rootUrl": "https://backupdr.googleapis.com/", "schemas": { "AbandonBackupRequest": { @@ -2990,6 +3444,69 @@ }, "type": "object" }, + "AppliedAutoProtectionPolicy": { + "description": "AppliedAutoProtectionPolicy is a read-only view of AutoProtectionPolicy and AutoProtectionPolicyBinding resources that apply to a given workload project.", + "id": "AppliedAutoProtectionPolicy", + "properties": { + "backupPlanDetails": { + "description": "Output only. The set of backup plan configurations, mirroring the backup_plan_details from the source AutoProtectionPolicy. Each element specifies a backup plan for a given resource type.", + "items": { + "$ref": "BackupPlanDetail" + }, + "readOnly": true, + "type": "array" + }, + "bindingEvaluationSummary": { + "$ref": "BindingEvaluationSummary", + "description": "Output only. The summary of the last policy application when the job has run.", + "readOnly": true + }, + "createTime": { + "description": "Output only. Timestamp indicating when the binding was last created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "criteria": { + "$ref": "Criteria", + "description": "Output only. The criteria resources must meet for this rule to apply. From AutoProtectionPolicy.criteria.", + "readOnly": true + }, + "name": { + "description": "Identifier. Canonical resource name. Format: projects/{workload-project-number}/locations/{location}/appliedAutoProtectionPolicies/{id}.", + "type": "string" + }, + "sourceBinding": { + "description": "Output only. The full resource name of the AutoProtectionPolicyBinding that applies the source policy to a scope including this workload project. e.g., projects/{admin-project}/locations/{location}/autoProtectionPolicies/{policy_id}/autoProtectionPolicyBindings/{binding_id}.", + "readOnly": true, + "type": "string" + }, + "status": { + "description": "Output only. The status of the applied auto protection policy.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "DELETION_INITIATED" + ], + "enumDescriptions": [ + "State is not specified.", + "The policy is in the process of being applied.", + "The policy has been applied and is active.", + "The policy is in the process of being removed." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. Timestamp indicating when the binding was last modified.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "AttachedDisk": { "description": "An instance-attached disk resource.", "id": "AttachedDisk", @@ -3121,58 +3638,227 @@ "PERSISTENT" ], "enumDescriptions": [ - "Default value, which is unused.", - "A scratch disk type.", - "A persistent disk type." + "Default value, which is unused.", + "A scratch disk type.", + "A persistent disk type." + ], + "type": "string" + } + }, + "type": "object" + }, + "AuditConfig": { + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions. Example: { \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging.", + "id": "AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" + } + }, + "type": "object" + }, + "AutoProtectionDetails": { + "description": "AutoProtectionDetails contains the protection details of a resource from the current binding's perspective.", + "id": "AutoProtectionDetails", + "properties": { + "backupPlanAssociation": { + "description": "Output only. Resource name of backup plan association linked to the resource, if any. Format: projects/{project}/locations/{location}/backupPlanAssociations/{backupPlanAssociationId}", + "readOnly": true, + "type": "string" + }, + "dataSource": { + "description": "Output only. Resource name of the datasource linked to the resource, if any. Format: projects/{project}/locations/{location}/backupVaults/{backupVaultId}/dataSources/{dataSourceId}", + "readOnly": true, + "type": "string" + }, + "error": { + "$ref": "Status", + "description": "Output only. Error during last sync for protection/unprotection, if any.", + "readOnly": true + }, + "state": { + "description": "Output only. Protection state of the resource from the current binding's perspective. Output only.", + "enum": [ + "STATE_UNSPECIFIED", + "PROTECTED", + "PROTECTION_FAILED", + "UNPROTECTING", + "UNPROTECTION_FAILED" + ], + "enumDescriptions": [ + "State unspecified.", + "Resource is protected.", + "Resource protection failed.", + "Resource is being unprotected.", + "Resource unprotection failed." ], + "readOnly": true, "type": "string" } }, "type": "object" }, - "AuditConfig": { - "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.", - "id": "AuditConfig", + "AutoProtectionPolicy": { + "description": "An AutoprotectionPolicy is a policy resource designed to automate backup management, moving from manual per-resource protection to a bulk approach. The policy dynamically discovers and applies a specified backup plan to all eligible resources that match its defined scope and criteria.", + "id": "AutoProtectionPolicy", "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.", + "backupPlanDetails": { + "description": "Required. The backup plan details for matching resources.", "items": { - "$ref": "AuditLogConfig" + "$ref": "BackupPlanDetail" }, "type": "array" }, - "service": { - "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "bindingSummary": { + "$ref": "BindingSummary", + "description": "Output only. Summary of total count of different containers covered through this policy.", + "readOnly": true + }, + "createTime": { + "description": "Output only. The timestamp when the policy was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "criteria": { + "$ref": "Criteria", + "description": "Required. The criteria for matching resources." + }, + "description": { + "description": "Optional. A description of the policy.", + "type": "string" + }, + "etag": { + "description": "Output only. The etag for the policy. If this is provided on update, it must match the server's etag.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}`", + "type": "string" + }, + "policyEvaluationSummary": { + "$ref": "PolicyEvaluationSummary", + "description": "Output only. Summary of last policy evaluation when job was run per workload type.", + "readOnly": true + }, + "state": { + "description": "Output only. The current state of the AutoProtectionPolicy.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "UPDATING", + "DELETING" + ], + "enumDescriptions": [ + "The state of the policy is unspecified.", + "The policy is being created.", + "The policy is active and protecting matching resources.", + "The policy is being updated.", + "The policy is being deleted." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the policy was last updated.", + "format": "google-datetime", + "readOnly": true, "type": "string" } }, "type": "object" }, - "AuditLogConfig": { - "description": "Provides the configuration for logging a type of permissions. Example: { \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging.", - "id": "AuditLogConfig", + "AutoProtectionPolicyBinding": { + "description": "An AutoProtectionPolicyBinding (APPA) acts as the bridge between an AutoProtectionPolicy and the scope (Project) where the policy should be applied.", + "id": "AutoProtectionPolicyBinding", "properties": { - "exemptedMembers": { - "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members.", - "items": { - "type": "string" - }, - "type": "array" + "bindingEvaluationSummary": { + "$ref": "BindingEvaluationSummary", + "description": "Output only. Summaries of the last policy application when the job has run, with one entry per resource type specified in the AutoProtectionPolicy.", + "readOnly": true }, - "logType": { - "description": "The log type that this config enables.", + "createTime": { + "description": "Output only. The timestamp when the binding was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. A description of the binding.", + "type": "string" + }, + "etag": { + "description": "Optional. Output only. The etag for the binding. If this is provided on update, it must match the server's etag.", + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}`", + "type": "string" + }, + "scope": { + "description": "Required. Immutable. Resource Id of target container on which policy will be applied. Format: projects/{project_id}", + "type": "string" + }, + "state": { + "description": "Output only. The current state of the AutoProtectionPolicyBinding.", "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "DELETION_INITIATED" ], "enumDescriptions": [ - "Default case. Should never be this.", - "Admin reads. Example: CloudIAM getIamPolicy", - "Data writes. Example: CloudSQL Users create", - "Data reads. Example: CloudSQL Users list" + "The state of the binding is unspecified.", + "The binding is being created.", + "The binding is active.", + "The binding deletion is initiated." ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the binding was last updated.", + "format": "google-datetime", + "readOnly": true, "type": "string" } }, @@ -3847,6 +4533,11 @@ "description": "Output only. AlloyDB cluster's backup plan association properties.", "readOnly": true }, + "autoProtectionPolicyBinding": { + "description": "Output only. The resource name of the `AutoProtectionPolicyBinding` that manages this association, if any. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{policy}/bindings/{binding}`.", + "readOnly": true, + "type": "string" + }, "backupPlan": { "description": "Required. Resource name of backup plan which needs to be applied on workload. Format: projects/{project}/locations/{location}/backupPlans/{backupPlanId}", "type": "string" @@ -3940,6 +4631,21 @@ }, "type": "object" }, + "BackupPlanDetail": { + "description": "BackupPlanDetail defines configuration of protection.", + "id": "BackupPlanDetail", + "properties": { + "backupPlan": { + "description": "Required. The resource name of the BackupPlan to apply to resources that match the policy's criteria. This backup plan must be in the same location as AutoProtectionPolicy. Format: projects/{project}/locations/{location}/backupPlans/{backupPlanId}", + "type": "string" + }, + "resourceType": { + "description": "Required. The type of resource that this policy will automatically protect. Allowed values are, `compute.googleapis.com/Instance` and `compute.googleapis.com/Disk` are supported.", + "type": "string" + } + }, + "type": "object" + }, "BackupPlanRevision": { "description": "`BackupPlanRevision` represents a snapshot of a `BackupPlan` at a point in time.", "id": "BackupPlanRevision", @@ -4185,6 +4891,70 @@ }, "type": "object" }, + "BindingEvaluationSummary": { + "description": "BindingEvaluationSummary contains the summary of the last run of job that applies policy to matching resources for a given binding.", + "id": "BindingEvaluationSummary", + "properties": { + "failedResourceCount": { + "description": "Output only. The number of matching resources whose protection failed during job run.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "matchingResourceCount": { + "description": "Output only. The number of resources that currently match the policy's criteria.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "protectedResourceCount": { + "description": "Output only. The number of matching resources that are successfully protected.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BindingMatchingResource": { + "description": "BindingMatchingResource contains the details of a resource that matches the criteria of a binding.", + "id": "BindingMatchingResource", + "properties": { + "autoProtectionDetails": { + "$ref": "AutoProtectionDetails", + "description": "Output only. The auto protection details of the resource from the current binding's perspective.", + "readOnly": true + }, + "lastEvaluationTime": { + "description": "Output only. The timestamp when the resource was last evaluated for protection.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the `BindingMatchingResource`. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{auto_protection_policy}/bindings/{binding}/matchingResources/{matching_resource}`", + "type": "string" + }, + "resource": { + "description": "Required. Immutable. Resource name of the workload that matches the criteria of the binding. The format can be either a relative resource name (e.g., `projects/my-project/zones/us-central1-a/instances/my-instance`) or a schemeless full resource name (e.g., `//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance`).", + "type": "string" + } + }, + "type": "object" + }, + "BindingSummary": { + "description": "BindingSummary contains count of different containers covered through this policy.", + "id": "BindingSummary", + "properties": { + "projectCount": { + "description": "Output only. Total count of Projects protected with this policy.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "CancelOperationRequest": { "description": "The request message for Operations.CancelOperation.", "id": "CancelOperationRequest", @@ -4651,6 +5421,20 @@ }, "type": "object" }, + "Criteria": { + "description": "Criteria specifies a set of criteria for matching resources.", + "id": "Criteria", + "properties": { + "matchingConditions": { + "description": "Required. A list of matching conditions that a resource must meet to be protected by the policy.", + "items": { + "$ref": "MatchingCondition" + }, + "type": "array" + } + }, + "type": "object" + }, "CustomerEncryptionKey": { "description": "A customer-supplied encryption key.", "id": "CustomerEncryptionKey", @@ -5656,6 +6440,11 @@ "description": "GcpBackupConfig captures the Backup configuration details for Google Cloud resources. All Google Cloud resources regardless of type are protected with backup plan associations.", "id": "GcpBackupConfig", "properties": { + "autoProtectionPolicyBinding": { + "description": "Output only. The resource name of the `AutoProtectionPolicyBinding` that manages this datasource, if any. Format: `projects/{project}/locations/{location}/autoProtectionPolicies/{policy}/bindings/{binding}`.", + "readOnly": true, + "type": "string" + }, "backupPlan": { "description": "The name of the backup plan.", "type": "string" @@ -5883,6 +6672,12 @@ }, "type": "object" }, + "InitiateDeleteAutoProtectionPolicyBindingRequest": { + "description": "Request message for initiating delete of an AutoProtectionPolicyBinding.", + "id": "InitiateDeleteAutoProtectionPolicyBindingRequest", + "properties": {}, + "type": "object" + }, "InstanceParams": { "description": "Additional instance params.", "id": "InstanceParams", @@ -5897,6 +6692,24 @@ }, "type": "object" }, + "KeyValuePair": { + "description": "KeyValuePair defines a key-value pair for matching resource labels.", + "id": "KeyValuePair", + "properties": { + "key": { + "description": "Required. The key of the label to match. This must be in the format `{label_key}`. The key must match the regex Format:`\\p{Ll}\\p{Lo}{0,62}`.", + "type": "string" + }, + "values": { + "description": "Required. The values of the label to match. There will be explicit “OR” between values of array. Each value must be in the format `{label_value}`. The value must match the regex Format: `[\\\\p{Ll}\\\\p{Lo}\\\\p{N}_-]{1,63}`.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "LabelKeyValPair": { "description": "Message for a label key-value pair.", "id": "LabelKeyValPair", @@ -5912,6 +6725,81 @@ }, "type": "object" }, + "ListAppliedAutoProtectionPoliciesResponse": { + "description": "Response message for ListAppliedAutoProtectionPolicies.", + "id": "ListAppliedAutoProtectionPoliciesResponse", + "properties": { + "appliedAutoProtectionPolicies": { + "description": "A list of the AppliedAutoProtectionPolicy resources found.", + "items": { + "$ref": "AppliedAutoProtectionPolicy" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token that can be sent as `page_token` to retrieve the next page.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached. For example, \"projects/my-project/locations/us-east1\"].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListAutoProtectionPoliciesResponse": { + "description": "Response message for ListAutoProtectionPolicies.", + "id": "ListAutoProtectionPoliciesResponse", + "properties": { + "autoProtectionPolicies": { + "description": "A list of the AutoProtectionPolicy resources found.", + "items": { + "$ref": "AutoProtectionPolicy" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListAutoProtectionPolicyBindingsResponse": { + "description": "Response message for ListAutoProtectionPolicyBindings.", + "id": "ListAutoProtectionPolicyBindingsResponse", + "properties": { + "autoProtectionPolicyBindings": { + "description": "A list of the AutoProtectionPolicyBindings resources found.", + "items": { + "$ref": "AutoProtectionPolicyBinding" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListBackupPlanAssociationsResponse": { "description": "Response message for List BackupPlanAssociation", "id": "ListBackupPlanAssociationsResponse", @@ -6037,6 +6925,24 @@ }, "type": "object" }, + "ListBindingMatchingResourcesResponse": { + "description": "The response message for getting a list of `BindingMatchingResources`.", + "id": "ListBindingMatchingResourcesResponse", + "properties": { + "matchingResources": { + "description": "The list of `BindingMatchingResources` in the project,location for the specified binding.", + "items": { + "$ref": "BindingMatchingResource" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token which may be sent as page_token in a subsequent `ListBindingMatchingResources` call to retrieve the next page of results. If this field is omitted or empty, then there are no more results to return.", + "type": "string" + } + }, + "type": "object" + }, "ListDataSourceReferencesResponse": { "description": "Response for the ListDataSourceReferences method.", "id": "ListDataSourceReferencesResponse", @@ -6390,6 +7296,17 @@ }, "type": "object" }, + "MatchingCondition": { + "description": "MatchingCondition specifies a set of conditions for matching resources.", + "id": "MatchingCondition", + "properties": { + "labelCondition": { + "$ref": "KeyValuePair", + "description": "Optional. A condition that matches resources based on their labels. For MVP, this is limited to a single label match." + } + }, + "type": "object" + }, "Metadata": { "description": "A metadata key/value entry.", "id": "Metadata", @@ -6725,6 +7642,31 @@ }, "type": "object" }, + "PolicyEvaluationSummary": { + "description": "PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources.", + "id": "PolicyEvaluationSummary", + "properties": { + "failedResourceCount": { + "description": "Output only. The number of matching resources whose protection failed during job run.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "matchingResourceCount": { + "description": "Output only. The number of resources that currently match the policy's criteria.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "protectedResourceCount": { + "description": "Output only. The number of matching resources that are successfully protected.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "RegionDiskTargetEnvironment": { "description": "RegionDiskTargetEnvironment represents the target environment for the disk.", "id": "RegionDiskTargetEnvironment", diff --git a/discovery/backupdr-v1beta.json b/discovery/backupdr-v1beta.json index 3c49764533..baf2013e85 100644 --- a/discovery/backupdr-v1beta.json +++ b/discovery/backupdr-v1beta.json @@ -777,7 +777,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -3179,7 +3179,7 @@ } } }, - "revision": "20261006", + "revision": "20261014", "rootUrl": "https://backupdr.googleapis.com/", "schemas": { "AbandonBackupRequest": { diff --git a/discovery/beyondcorp-v1.json b/discovery/beyondcorp-v1.json index 61c31571b1..2b0ff11eb3 100644 --- a/discovery/beyondcorp-v1.json +++ b/discovery/beyondcorp-v1.json @@ -321,50 +321,6 @@ "resources": { "appConnections": { "methods": { - "create": { - "deprecated": true, - "description": "Creates a new AppConnection in a given project and location.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/appConnections", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.appConnections.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "appConnectionId": { - "description": "Optional. User-settable AppConnection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource project name of the AppConnection location using the form: `projects/{project_id}/locations/{location_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+parent}/appConnections", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectionsV1AppConnection" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "delete": { "deprecated": true, "description": "Deletes a single AppConnection.", @@ -505,56 +461,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "deprecated": true, - "description": "Updates the parameters of a single AppConnection.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/appConnections/{appConnectionsId}", - "httpMethod": "PATCH", - "id": "beyondcorp.projects.locations.appConnections.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "allowMissing": { - "description": "Optional. If set as true, will create the resource if it is not found.", - "location": "query", - "type": "boolean" - }, - "name": { - "description": "Required. Unique resource name of the AppConnection. The name is ignored when creating a AppConnection.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/appConnections/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnection]: * `labels` * `display_name` * `application_endpoint` * `connectors`", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+name}", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectionsV1AppConnection" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "resolve": { "deprecated": true, "description": "Resolves AppConnections details for a given AppConnector. An internal method called by a connector to find AppConnections to connect to.", @@ -657,50 +563,6 @@ }, "appConnectors": { "methods": { - "create": { - "deprecated": true, - "description": "Creates a new AppConnector in a given project and location.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/appConnectors", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.appConnectors.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "appConnectorId": { - "description": "Optional. User-settable AppConnector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource project name of the AppConnector location using the form: `projects/{project_id}/locations/{location_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+parent}/appConnectors", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectorsV1AppConnector" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "delete": { "deprecated": true, "description": "Deletes a single AppConnector.", @@ -841,80 +703,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "deprecated": true, - "description": "Updates the parameters of a single AppConnector.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/appConnectors/{appConnectorsId}", - "httpMethod": "PATCH", - "id": "beyondcorp.projects.locations.appConnectors.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/appConnectors/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnector]: * `labels` * `display_name`", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+name}", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectorsV1AppConnector" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "reportStatus": { - "deprecated": true, - "description": "Report status for a given connector.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/appConnectors/{appConnectorsId}:reportStatus", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.appConnectors.reportStatus", - "parameterOrder": [ - "appConnector" - ], - "parameters": { - "appConnector": { - "description": "Required. BeyondCorp Connector name using the form: `projects/{project_id}/locations/{location_id}/connectors/{connector}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/appConnectors/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1/{+appConnector}:reportStatus", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectorsV1ReportStatusRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "resolveInstanceConfig": { "deprecated": true, "description": "Gets instance configuration for a given AppConnector. An internal method called by a AppConnector to get its container config.", @@ -1001,50 +789,6 @@ }, "appGateways": { "methods": { - "create": { - "deprecated": true, - "description": "Creates a new AppGateway in a given project and location.", - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/appGateways", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.appGateways.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "appGatewayId": { - "description": "Optional. User-settable AppGateway resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource project name of the AppGateway location using the form: `projects/{project_id}/locations/{location_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1/{+parent}/appGateways", - "request": { - "$ref": "AppGateway" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "delete": { "deprecated": true, "description": "Deletes a single AppGateway.", @@ -1926,7 +1670,7 @@ } } }, - "revision": "20261007", + "revision": "20261014", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -2750,25 +2494,6 @@ "properties": {}, "type": "object" }, - "GoogleCloudBeyondcorpAppconnectorsV1ReportStatusRequest": { - "description": "Request report the connector status.", - "id": "GoogleCloudBeyondcorpAppconnectorsV1ReportStatusRequest", - "properties": { - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "type": "string" - }, - "resourceInfo": { - "$ref": "GoogleCloudBeyondcorpAppconnectorsV1ResourceInfo", - "description": "Required. Resource info of the connector." - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "type": "boolean" - } - }, - "type": "object" - }, "GoogleCloudBeyondcorpAppconnectorsV1ResolveInstanceConfigResponse": { "description": "Response message for BeyondCorp.ResolveInstanceConfig.", "id": "GoogleCloudBeyondcorpAppconnectorsV1ResolveInstanceConfigResponse", diff --git a/discovery/beyondcorp-v1alpha.json b/discovery/beyondcorp-v1alpha.json index 23274514a6..4aa6001487 100644 --- a/discovery/beyondcorp-v1alpha.json +++ b/discovery/beyondcorp-v1alpha.json @@ -723,50 +723,6 @@ "resources": { "appConnections": { "methods": { - "create": { - "deprecated": true, - "description": "Creates a new AppConnection in a given project and location.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/appConnections", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.appConnections.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "appConnectionId": { - "description": "Optional. User-settable AppConnection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource project name of the AppConnection location using the form: `projects/{project_id}/locations/{location_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+parent}/appConnections", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectionsV1alphaAppConnection" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "delete": { "deprecated": true, "description": "Deletes a single AppConnection.", @@ -907,56 +863,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "deprecated": true, - "description": "Updates the parameters of a single AppConnection.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/appConnections/{appConnectionsId}", - "httpMethod": "PATCH", - "id": "beyondcorp.projects.locations.appConnections.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "allowMissing": { - "description": "Optional. If set as true, will create the resource if it is not found.", - "location": "query", - "type": "boolean" - }, - "name": { - "description": "Required. Unique resource name of the AppConnection. The name is ignored when creating a AppConnection.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/appConnections/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnection]: * `labels` * `display_name` * `application_endpoint` * `connectors`", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+name}", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectionsV1alphaAppConnection" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "resolve": { "deprecated": true, "description": "Resolves AppConnections details for a given AppConnector. An internal method called by a connector to find AppConnections to connect to.", @@ -1059,50 +965,6 @@ }, "appConnectors": { "methods": { - "create": { - "deprecated": true, - "description": "Creates a new AppConnector in a given project and location.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/appConnectors", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.appConnectors.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "appConnectorId": { - "description": "Optional. User-settable AppConnector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource project name of the AppConnector location using the form: `projects/{project_id}/locations/{location_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+parent}/appConnectors", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectorsV1alphaAppConnector" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "delete": { "deprecated": true, "description": "Deletes a single AppConnector.", @@ -1243,80 +1105,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "deprecated": true, - "description": "Updates the parameters of a single AppConnector.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/appConnectors/{appConnectorsId}", - "httpMethod": "PATCH", - "id": "beyondcorp.projects.locations.appConnectors.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/appConnectors/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnector]: * `labels` * `display_name`", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+name}", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectorsV1alphaAppConnector" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "reportStatus": { - "deprecated": true, - "description": "Report status for a given connector.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/appConnectors/{appConnectorsId}:reportStatus", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.appConnectors.reportStatus", - "parameterOrder": [ - "appConnector" - ], - "parameters": { - "appConnector": { - "description": "Required. BeyondCorp Connector name using the form: `projects/{project_id}/locations/{location_id}/connectors/{connector}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/appConnectors/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1alpha/{+appConnector}:reportStatus", - "request": { - "$ref": "GoogleCloudBeyondcorpAppconnectorsV1alphaReportStatusRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "resolveInstanceConfig": { "deprecated": true, "description": "Gets instance configuration for a given AppConnector. An internal method called by a AppConnector to get its container config.", @@ -1403,50 +1191,6 @@ }, "appGateways": { "methods": { - "create": { - "deprecated": true, - "description": "Creates a new AppGateway in a given project and location.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/appGateways", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.appGateways.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "appGatewayId": { - "description": "Optional. User-settable AppGateway resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource project name of the AppGateway location using the form: `projects/{project_id}/locations/{location_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+parent}/appGateways", - "request": { - "$ref": "AppGateway" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "delete": { "deprecated": true, "description": "Deletes a single AppGateway.", @@ -1829,49 +1573,6 @@ }, "connections": { "methods": { - "create": { - "description": "Creates a new Connection in a given project and location.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connections", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.connections.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "connectionId": { - "description": "Optional. User-settable connection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource project name of the connection location using the form: `projects/{project_id}/locations/{location_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+parent}/connections", - "request": { - "$ref": "Connection" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "delete": { "description": "Deletes a single Connection.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}", @@ -2009,55 +1710,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "description": "Updates the parameters of a single Connection.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}", - "httpMethod": "PATCH", - "id": "beyondcorp.projects.locations.connections.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "allowMissing": { - "description": "Optional. If set as true, will create the resource if it is not found.", - "location": "query", - "type": "boolean" - }, - "name": { - "description": "Required. Unique resource name of the connection. The name is ignored when creating a connection.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.Connection]: * `labels` * `display_name` * `application_endpoint` * `connectors`", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+name}", - "request": { - "$ref": "Connection" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "resolve": { "description": "Resolves connections details for a given connector. An internal method called by a connector to find connections to connect to.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connections:resolve", @@ -2131,49 +1783,6 @@ }, "connectors": { "methods": { - "create": { - "description": "Creates a new Connector in a given project and location.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connectors", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.connectors.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "connectorId": { - "description": "Optional. User-settable connector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The resource project name of the connector location using the form: `projects/{project_id}/locations/{location_id}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+parent}/connectors", - "request": { - "$ref": "Connector" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "delete": { "description": "Deletes a single Connector.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", @@ -2311,78 +1920,6 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "patch": { - "description": "Updates the parameters of a single Connector.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", - "httpMethod": "PATCH", - "id": "beyondcorp.projects.locations.connectors.patch", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. Unique resource name of the connector. The name is ignored when creating a connector.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", - "required": true, - "type": "string" - }, - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.Connector]: * `labels` * `display_name`", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1alpha/{+name}", - "request": { - "$ref": "Connector" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "reportStatus": { - "description": "Report status for a given connector.", - "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}:reportStatus", - "httpMethod": "POST", - "id": "beyondcorp.projects.locations.connectors.reportStatus", - "parameterOrder": [ - "connector" - ], - "parameters": { - "connector": { - "description": "Required. BeyondCorp Connector name using the form: `projects/{project_id}/locations/{location_id}/connectors/{connector}`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1alpha/{+connector}:reportStatus", - "request": { - "$ref": "ReportStatusRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "resolveInstanceConfig": { "description": "Gets instance configuration for a given connector. An internal method called by a connector to get its container config.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}:resolveInstanceConfig", @@ -3349,7 +2886,7 @@ } } }, - "revision": "20261007", + "revision": "20261014", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -4621,25 +4158,6 @@ "properties": {}, "type": "object" }, - "GoogleCloudBeyondcorpAppconnectorsV1alphaReportStatusRequest": { - "description": "Request report the connector status.", - "id": "GoogleCloudBeyondcorpAppconnectorsV1alphaReportStatusRequest", - "properties": { - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "type": "string" - }, - "resourceInfo": { - "$ref": "GoogleCloudBeyondcorpAppconnectorsV1alphaResourceInfo", - "description": "Required. Resource info of the connector." - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "type": "boolean" - } - }, - "type": "object" - }, "GoogleCloudBeyondcorpAppconnectorsV1alphaResolveInstanceConfigResponse": { "description": "Response message for BeyondCorp.ResolveInstanceConfig.", "id": "GoogleCloudBeyondcorpAppconnectorsV1alphaResolveInstanceConfigResponse", @@ -6315,25 +5833,6 @@ "properties": {}, "type": "object" }, - "ReportStatusRequest": { - "description": "Request report the connector status.", - "id": "ReportStatusRequest", - "properties": { - "requestId": { - "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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).", - "type": "string" - }, - "resourceInfo": { - "$ref": "ResourceInfo", - "description": "Required. Resource info of the connector." - }, - "validateOnly": { - "description": "Optional. If set, validates request by executing a dry-run which would not alter the resource in any way.", - "type": "boolean" - } - }, - "type": "object" - }, "ResolveConnectionsResponse": { "description": "Response message for BeyondCorp.ResolveConnections.", "id": "ResolveConnectionsResponse", diff --git a/discovery/binaryauthorization-v1beta1.json b/discovery/binaryauthorization-v1beta1.json index c70d0986eb..f184e2bc38 100644 --- a/discovery/binaryauthorization-v1beta1.json +++ b/discovery/binaryauthorization-v1beta1.json @@ -551,7 +551,7 @@ } } }, - "revision": "20260703", + "revision": "20261016", "rootUrl": "https://binaryauthorization.googleapis.com/", "schemas": { "AdmissionRule": { @@ -589,6 +589,7 @@ "type": "string" }, "requireAttestationsBy": { + "description": "Optional. The resource names of the attestors that must attest to a container image, in the format `projects/*/attestors/*`. Each attestor must exist before a policy can reference it. To add an attestor to a policy the principal issuing the policy change request must be able to read the attestor resource. Note: this field must be non-empty when the evaluation_mode field specifies REQUIRE_ATTESTATION, otherwise it must be empty.", "items": { "type": "string" }, @@ -863,7 +864,7 @@ "additionalProperties": { "$ref": "AdmissionRule" }, - "description": "Optional. Per-cluster admission rules. Cluster spec format: `location.clusterId`. There can be at most one admission rule per cluster spec. A `location` is either a compute zone (e.g. us-central1-a) or a region (e.g. us-central1). For `clusterId` syntax restrictions see https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters.", + "description": "Optional. A valid Policy has only one of the following rule maps non-empty, i.e. only one of cluster_admission_rules, kubernetes_service_account_admission_rules or istio_service_identity_admission_rules can be non-empty. Per-cluster admission rules. Cluster spec format: `location.clusterId`. There can be at most one admission rule per cluster spec. A `location` is either a compute zone (e.g. us-central1-a) or a region (e.g. us-central1). For `clusterId` syntax restrictions see https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters.", "type": "object" }, "defaultAdmissionRule": { diff --git a/discovery/chromemanagement-v1.json b/discovery/chromemanagement-v1.json index 3ae387e779..9edd03bfc5 100644 --- a/discovery/chromemanagement-v1.json +++ b/discovery/chromemanagement-v1.json @@ -571,7 +571,7 @@ "type": "string" }, "orderBy": { - "description": "Optional. The fields used to specify the ordering of the results. The supported fields are: * `browser_permanent_id` * `last_sync` * `annotated_user` * `annotated_location` * `annotated_asset_id` * `annotated_notes` * `org_unit_path` * `os_version` * `enrollment_date` * `extension_count` * `policy_count` * `last_signed_in_user` * `machine_name` * `browser_version_channel` * `os_platform_version` * `last_activity_time` * `browser_version` By default, sorting is in ascending order, to specify descending order for a field, a suffix ` desc` should be added to the field name. The default ordering is the descending order of `last_status_report_time`.", + "description": "Optional. The fields used to specify the ordering of the results. The supported fields are: * `browser_permanent_id` * `last_policy_fetch_time` * `annotated_user` * `annotated_location` * `annotated_asset_id` * `annotated_notes` * `org_unit_path` * `os_version` * `last_registration_time` * `extension_count` * `policy_count` * `last_device_user` * `machine_name` * `browser_version_channel` * `os_platform_version` * `last_activity_time` * `browser_version` By default, sorting is in ascending order, to specify descending order for a field, a suffix ` desc` should be added to the field name. The default ordering is the ascending order of `browser_permanent_id`.", "location": "query", "type": "string" }, @@ -2823,7 +2823,7 @@ } } }, - "revision": "20261018", + "revision": "20261020", "rootUrl": "https://chromemanagement.googleapis.com/", "schemas": { "GoogleChromeManagementV1AndroidAppInfo": { diff --git a/discovery/cloudasset-v1p7beta1.json b/discovery/cloudasset-v1p7beta1.json index 561efcb3be..dfe521e39b 100644 --- a/discovery/cloudasset-v1p7beta1.json +++ b/discovery/cloudasset-v1p7beta1.json @@ -171,7 +171,7 @@ } } }, - "revision": "20261010", + "revision": "20261017", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AnalyzeIamPolicyLongrunningMetadata": { @@ -693,7 +693,7 @@ "type": "string" }, "title": { - "description": "Human readable title. Must be unique within the Policy.", + "description": "Human-readable title. Must be unique within the policy.", "type": "string" } }, @@ -704,7 +704,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1AccessPolicy", "properties": { "etag": { - "description": "Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two Access Policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.", + "description": "Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two access policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format.", "readOnly": true, "type": "string" }, @@ -717,14 +717,14 @@ "type": "string" }, "scopes": { - "description": "The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=[\"folders/123\"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy which includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`", + "description": "The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=[\"folders/123\"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy that includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`", "items": { "type": "string" }, "type": "array" }, "title": { - "description": "Required. Human readable title. Does not affect behavior.", + "description": "Required. Human-readable title. Does not affect behavior.", "type": "string" } }, @@ -768,7 +768,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1BasicLevel", "properties": { "combiningFunction": { - "description": "How the `conditions` list should be combined to determine if a request is granted this `AccessLevel`. If AND is used, each `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. If OR is used, at least one `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. Default behavior is AND.", + "description": "How the `conditions` list should be combined to determine if a request is granted this `AccessLevel`. If `AND` is used, each `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. If `OR` is used, at least one `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. Default behavior is `AND`.", "enum": [ "AND", "OR" @@ -790,15 +790,15 @@ "type": "object" }, "GoogleIdentityAccesscontextmanagerV1Condition": { - "description": "A condition necessary for an `AccessLevel` to be granted. The Condition is an AND over its fields. So a Condition is true if: 1) the request IP is from one of the listed subnetworks AND 2) the originating device complies with the listed device policy AND 3) all listed access levels are granted AND 4) the request was sent at a time allowed by the DateTimeRestriction.", + "description": "A condition necessary for an `AccessLevel` to be granted. The `Condition` is an AND over its fields. A `Condition` is true if: 1) the request IP is from one of the listed subnetworks, AND 2) the originating device complies with the listed device policy, AND 3) all listed access levels are granted, AND 4) the request was sent at a time allowed by the `DateTimeRestriction`.", "id": "GoogleIdentityAccesscontextmanagerV1Condition", "properties": { "devicePolicy": { "$ref": "GoogleIdentityAccesscontextmanagerV1DevicePolicy", - "description": "Device specific restrictions, all restrictions must hold for the Condition to be true. If not specified, all devices are allowed." + "description": "Device-specific restrictions. All restrictions must hold for the `Condition` to be true. If not specified, all devices are allowed." }, "ipSubnetworks": { - "description": "CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, \"192.0.2.0/24\" is accepted but \"192.0.2.1/24\" is not. Similarly, for IPv6, \"2001:db8::/32\" is accepted whereas \"2001:db8::1/32\" is not. The originating IP of a request must be in one of the listed subnets in order for this Condition to be true. If empty, all IP addresses are allowed.", + "description": "CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (that is, all the host bits must be zero) or the input is considered malformed. For example, `\"192.0.2.0/24\"` is accepted, but `\"192.0.2.1/24\"` is not. Similarly, for IPv6, `\"2001:db8::/32\"` is accepted, whereas `\"2001:db8::1/32\"` is not. The originating IP of a request must be in one of the listed subnets in order for this `Condition` to be true. If empty, all IP addresses are allowed.", "items": { "type": "string" }, @@ -812,7 +812,7 @@ "type": "array" }, "negate": { - "description": "Whether to negate the Condition. If true, the Condition becomes a NAND over its non-empty fields. Any non-empty field criteria evaluating to false will result in the Condition to be satisfied. Defaults to false.", + "description": "Whether to negate the `Condition`. If `true`, the `Condition` becomes a NAND over its non-empty fields. Any non-empty field criteria evaluating to `false` will result in the `Condition` being satisfied. Defaults to `false`.", "type": "boolean" }, "regions": { @@ -823,7 +823,7 @@ "type": "array" }, "requiredAccessLevels": { - "description": "A list of other access levels defined in the same `Policy`, referenced by resource name. Referencing an `AccessLevel` which does not exist is an error. All access levels listed must be granted for the Condition to be true. Example: \"`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME\"`", + "description": "A list of other access levels defined in the same `Policy`, referenced by resource name. Referencing an `AccessLevel` that does not exist is an error. All access levels listed must be granted for the `Condition` to be true. Example: `\"accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME\"`", "items": { "type": "string" }, @@ -851,11 +851,11 @@ "type": "object" }, "GoogleIdentityAccesscontextmanagerV1DevicePolicy": { - "description": "`DevicePolicy` specifies device specific restrictions necessary to acquire a given access level. A `DevicePolicy` specifies requirements for requests from devices to be granted access levels, it does not do any enforcement on the device. `DevicePolicy` acts as an AND over all specified fields, and each repeated field is an OR over its elements. Any unset fields are ignored. For example, if the proto is { os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX, encryption_status: ENCRYPTED}, then the DevicePolicy will be true for requests originating from encrypted Linux desktops and encrypted Windows desktops.", + "description": "`DevicePolicy` specifies device-specific restrictions necessary to acquire a given access level. A `DevicePolicy` specifies requirements for requests from devices to be granted access levels; it does not do any enforcement on the device. `DevicePolicy` acts as an AND over all specified fields, and each repeated field is an OR over its elements. Any unset fields are ignored. For example, if the proto is `{ os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX, encryption_status: ENCRYPTED}`, then the `DevicePolicy` will be true for requests originating from encrypted Linux desktops and encrypted Windows desktops.", "id": "GoogleIdentityAccesscontextmanagerV1DevicePolicy", "properties": { "allowedDeviceManagementLevels": { - "description": "Allowed device management levels, an empty list allows all management levels.", + "description": "Allowed device management levels. An empty list allows all management levels.", "items": { "enum": [ "MANAGEMENT_UNSPECIFIED", @@ -874,7 +874,7 @@ "type": "array" }, "allowedEncryptionStatuses": { - "description": "Allowed encryptions statuses, an empty list allows all statuses.", + "description": "Allowed encryption statuses. An empty list allows all statuses.", "items": { "enum": [ "ENCRYPTION_UNSPECIFIED", @@ -893,7 +893,7 @@ "type": "array" }, "osConstraints": { - "description": "Allowed OS versions, an empty list allows all types and all versions.", + "description": "Allowed OS versions. An empty list allows all types and all versions.", "items": { "$ref": "GoogleIdentityAccesscontextmanagerV1OsConstraint" }, @@ -904,18 +904,18 @@ "type": "boolean" }, "requireCorpOwned": { - "description": "Whether the device needs to be corp owned.", + "description": "Whether the device needs to be corp-owned.", "type": "boolean" }, "requireScreenlock": { - "description": "Whether or not screenlock is required for the DevicePolicy to be true. Defaults to `false`.", + "description": "Whether or not screenlock is required for the `DevicePolicy` to be true. Defaults to `false`.", "type": "boolean" } }, "type": "object" }, "GoogleIdentityAccesscontextmanagerV1EgressFrom": { - "description": "Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed.", + "description": "Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed.", "id": "GoogleIdentityAccesscontextmanagerV1EgressFrom", "properties": { "identities": { @@ -942,7 +942,7 @@ "type": "string" }, "sourceRestriction": { - "description": "Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.", + "description": "Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.", "enum": [ "SOURCE_RESTRICTION_UNSPECIFIED", "SOURCE_RESTRICTION_ENABLED", @@ -966,7 +966,7 @@ "type": "object" }, "GoogleIdentityAccesscontextmanagerV1EgressPolicy": { - "description": "Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.", + "description": "Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo.", "id": "GoogleIdentityAccesscontextmanagerV1EgressPolicy", "properties": { "egressFrom": { @@ -978,7 +978,7 @@ "description": "Defines the conditions on the ApiOperation and destination resources that cause this EgressPolicy to apply." }, "title": { - "description": "Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.", + "description": "Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.", "type": "string" } }, @@ -997,7 +997,7 @@ "description": "A PrivateServiceConnectEndpoint that is allowed to access data outside the perimeter. The Private Service Connect endpoint may be in any organization, not just the organization that the perimeter is defined in." }, "resource": { - "description": "A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources.", + "description": "A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`. You can't use `*` in this field to allow all Google Cloud resources.", "type": "string" } }, @@ -1008,7 +1008,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1EgressTo", "properties": { "externalResources": { - "description": "A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed.", + "description": "A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed.", "items": { "type": "string" }, @@ -1022,14 +1022,14 @@ "type": "array" }, "resources": { - "description": "A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.", + "description": "A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter.", "items": { "type": "string" }, "type": "array" }, "roles": { - "description": "IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter.", + "description": "IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter.", "items": { "type": "string" }, @@ -1088,7 +1088,7 @@ "description": "Defines the conditions on the ApiOperation and request destination that cause this IngressPolicy to apply." }, "title": { - "description": "Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.", + "description": "Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters.", "type": "string" } }, @@ -1099,7 +1099,7 @@ "id": "GoogleIdentityAccesscontextmanagerV1IngressSource", "properties": { "accessLevel": { - "description": "An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.", + "description": "An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed.", "type": "string" }, "pscEndpoint": { @@ -1125,7 +1125,7 @@ "type": "array" }, "resources": { - "description": "A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed.", + "description": "A list of resources, currently projects, folders, and organizations in the form `projects/{project_number}`, `folders/{folder_id}`, and `organizations/{organization_id}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed.", "items": { "type": "string" }, @@ -1200,7 +1200,7 @@ "type": "string" }, "requireVerifiedChromeOs": { - "description": "Only allows requests from devices with a verified Chrome OS. Verifications includes requirements that the device is enterprise-managed, conformant to domain policies, and the caller has permission to call the API targeted by the request.", + "description": "Only allows requests from devices with a verified Chrome OS. Verification includes requirements that the device is enterprise-managed, conforms to domain policies, and the caller has permission to call the API targeted by the request.", "type": "boolean" } }, @@ -1229,7 +1229,7 @@ "type": "array" }, "pattern": { - "description": "URL pattern to allow. Only patterns of \".googleapis.com/*\", \"www.googleapis.com//*\" and \"*.appspot.com/* forms are supported, where should be an alphanumeric name.", + "description": "URL pattern to allow. Only patterns of `\".googleapis.com/*\"`, `\"www.googleapis.com//*\"`, and `\"*.appspot.com/*\"` forms are supported, where `` should be an alphanumeric name.", "type": "string" }, "service": { @@ -1256,7 +1256,7 @@ "type": "string" }, "perimeterType": { - "description": "Perimeter type indicator. A single project or VPC network is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.", + "description": "Perimeter type indicator. A single project or VPC network is allowed to be a member of a single regular perimeter, but multiple service perimeter bridges. A project cannot be included in a perimeter bridge without being included in a regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.", "enum": [ "PERIMETER_TYPE_REGULAR", "PERIMETER_TYPE_BRIDGE" @@ -1269,18 +1269,18 @@ }, "spec": { "$ref": "GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig", - "description": "Proposed (or dry run) ServicePerimeter configuration. This configuration allows to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the \"use_explicit_dry_run_spec\" flag is set." + "description": "Proposed (or dry run) ServicePerimeter configuration. This configuration allows you to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the `use_explicit_dry_run_spec` flag is set." }, "status": { "$ref": "GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig", - "description": "Current ServicePerimeter configuration. Specifies sets of resources, restricted services and access levels that determine perimeter content and boundaries." + "description": "Current ServicePerimeter configuration. Specifies sets of resources, restricted services, and access levels that determine perimeter content and boundaries." }, "title": { "description": "Human readable title. Must be unique within the Policy.", "type": "string" }, "useExplicitDryRunSpec": { - "description": "Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration (\"spec\") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config (\"status\") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values.", + "description": "Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration (\"spec\") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config (\"status\") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. `use_explicit_dry_run_spec` must be set to `true` if any of the fields in the spec are set to non-default values.", "type": "boolean" } }, @@ -1344,14 +1344,14 @@ "type": "array" }, "allowedServices": { - "description": "The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.", + "description": "The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter.", "items": { "type": "string" }, "type": "array" }, "enableRestriction": { - "description": "Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.", + "description": "Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`.", "type": "boolean" }, "servicePatternsEnforcementScopes": { @@ -1363,7 +1363,7 @@ ], "enumDescriptions": [ "Default value. This cannot be used.", - "Enables VPC Accessible Services enforcement for all APIs (including unsupported APIs) for Private Google Access configured with Private VIP and Private Service Connect Endpoint for Global Google APIs that uses 'all-apis' bundle." + "Enables VPC Accessible Services enforcement for all APIs (including unsupported APIs) for Private Google Access configured with Private VIP and Private Service Connect Endpoint for Global Google APIs that use the `'all-apis'` bundle." ], "type": "string" }, @@ -1384,7 +1384,7 @@ "type": "object" }, "GoogleIdentityAccesscontextmanagerV1VpcSubNetwork": { - "description": "Sub-segment ranges inside of a VPC Network.", + "description": "Sub-segment ranges inside of a VPC network.", "id": "GoogleIdentityAccesscontextmanagerV1VpcSubNetwork", "properties": { "network": { @@ -1392,7 +1392,7 @@ "type": "string" }, "vpcIpSubnetworks": { - "description": "CIDR block IP subnetwork specification. The IP address must be an IPv4 address and can be a public or private IP address. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, \"192.0.2.0/24\" is accepted but \"192.0.2.1/24\" is not. If empty, all IP addresses are allowed.", + "description": "CIDR block IP subnetwork specification. The IP address must be an IPv4 address and can be a public or private IP address. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (that is, all the host bits must be zero) or the input is considered malformed. For example, `\"192.0.2.0/24\"` is accepted, but `\"192.0.2.1/24\"` is not. If empty, all IP addresses are allowed.", "items": { "type": "string" }, diff --git a/discovery/cloudidentity-v1.json b/discovery/cloudidentity-v1.json index 8897485087..7d29c8b8ba 100644 --- a/discovery/cloudidentity-v1.json +++ b/discovery/cloudidentity-v1.json @@ -2423,7 +2423,7 @@ } } }, - "revision": "20260923", + "revision": "20261019", "rootUrl": "https://cloudidentity.googleapis.com/", "schemas": { "AddIdpCredentialOperationMetadata": { @@ -4313,6 +4313,8 @@ "SHARED_DRIVE", "CBCM_BROWSER", "CHROME_OS_DEVICE", + "PERSONAL_AGENT", + "COWORKER_AGENT", "OTHER" ], "enumDescriptions": [ @@ -4323,6 +4325,8 @@ "Represents Shared drive.", "Represents a CBCM-managed Chrome Browser type.", "Represents a ChromeOS-managed ChromeOS device type.", + "Represents a Personal Agent type.", + "Represents a Coworker Agent type.", "Represents other type." ], "readOnly": true, diff --git a/discovery/cloudidentity-v1beta1.json b/discovery/cloudidentity-v1beta1.json index 8c1874d78d..6ad4a957ec 100644 --- a/discovery/cloudidentity-v1beta1.json +++ b/discovery/cloudidentity-v1beta1.json @@ -2461,7 +2461,7 @@ } } }, - "revision": "20260923", + "revision": "20261019", "rootUrl": "https://cloudidentity.googleapis.com/", "schemas": { "AddIdpCredentialOperationMetadata": { @@ -5306,6 +5306,8 @@ "SHARED_DRIVE", "CBCM_BROWSER", "CHROME_OS_DEVICE", + "PERSONAL_AGENT", + "COWORKER_AGENT", "OTHER" ], "enumDescriptions": [ @@ -5316,6 +5318,8 @@ "Represents Shared drive.", "Represents a CBCM-managed Chrome Browser type.", "Represents a ChromeOS-managed ChromeOS device type.", + "Represents a Personal Agent type.", + "Represents a Coworker Agent type.", "Represents other type." ], "readOnly": true, diff --git a/discovery/cloudresourcemanager-v3.json b/discovery/cloudresourcemanager-v3.json index e677f67cd0..bf262f272f 100644 --- a/discovery/cloudresourcemanager-v3.json +++ b/discovery/cloudresourcemanager-v3.json @@ -216,6 +216,32 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, + "getBoundaryConfig": { + "description": "Retrieves the BoundaryConfig identified by the specified `name` (for example, `folders/123456789/boundaryConfig`).", + "flatPath": "v3/folders/{foldersId}/boundaryConfig", + "httpMethod": "GET", + "id": "cloudresourcemanager.folders.getBoundaryConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the BoundaryConfig to retrieve. Format: `organizations/{organization}/boundaryConfig` or `folders/{folder}/boundaryConfig` Example: `folders/123456789/boundaryConfig`", + "location": "path", + "pattern": "^folders/[^/]+/boundaryConfig$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "BoundaryConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "getIamPolicy": { "description": "Gets the access control policy for a folder. The returned policy may be empty if no such policy or resource exists. The `resource` field should be the folder's resource name, for example: \"folders/1234\". The caller must have `resourcemanager.folders.getIamPolicy` permission on the identified folder.", "flatPath": "v3/folders/{foldersId}:getIamPolicy", @@ -461,9 +487,202 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "updateBoundaryConfig": { + "description": "Updates the BoundaryConfig identified by the specified `name` (for example, `folders/123456789/boundaryConfig`).", + "flatPath": "v3/folders/{foldersId}/boundaryConfig", + "httpMethod": "PATCH", + "id": "cloudresourcemanager.folders.updateBoundaryConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The unique resource name of the BoundaryConfig. Format: - `organizations/{organization}/boundaryConfig` - `folders/{folder}/boundaryConfig` Example: `folders/123456789/boundaryConfig`", + "location": "path", + "pattern": "^folders/[^/]+/boundaryConfig$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}", + "request": { + "$ref": "BoundaryConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { + "boundaries": { + "methods": { + "create": { + "description": "Creates a Boundary under a parent Folder or Organization. Creating a Boundary triggers the creation of a Management Project if one is not supplied.", + "flatPath": "v3/folders/{foldersId}/boundaries", + "httpMethod": "POST", + "id": "cloudresourcemanager.folders.boundaries.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "boundaryId": { + "description": "Required. The user-assigned ID for the Boundary, which will become the final component of the Boundary's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-boundary-123`", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource under which the Boundary will be created. Format: `organizations/{organization_id}` or `folders/{folder_id}`", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+parent}/boundaries", + "request": { + "$ref": "Boundary" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`).", + "flatPath": "v3/folders/{foldersId}/boundaries/{boundariesId}", + "httpMethod": "DELETE", + "id": "cloudresourcemanager.folders.boundaries.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Boundary to delete. Format: `organizations/{organization_id}/boundaries/{boundary_id}` or `folders/{folder_id}/boundaries/{boundary_id}`", + "location": "path", + "pattern": "^folders/[^/]+/boundaries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`).", + "flatPath": "v3/folders/{foldersId}/boundaries/{boundariesId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.folders.boundaries.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Boundary to retrieve. Format: `organizations/{organization_id}/boundaries/{boundary_id}` or `folders/{folder_id}/boundaries/{boundary_id}` Example: `folders/123456789/boundaries/my-boundary`", + "location": "path", + "pattern": "^folders/[^/]+/boundaries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "Boundary" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Boundaries that are direct children of the specified organization or folder resource.", + "flatPath": "v3/folders/{foldersId}/boundaries", + "httpMethod": "GET", + "id": "cloudresourcemanager.folders.boundaries.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of Boundaries to return in the response. The service may return fewer Boundaries than requested. If unspecified, at most 100 Boundaries will be returned. The maximum value is 100; values above 100 will be coerced to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A pagination token received from a previous call to `ListBoundaries` that indicates from where listing should continue. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource whose Boundaries are being listed. Format: `organizations/{organization_id}` or `folders/{folder_id}`", + "location": "path", + "pattern": "^folders/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+parent}/boundaries", + "response": { + "$ref": "ListBoundariesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the `display_name` and `resource_filter.tag_filter.tag_value` of the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`).", + "flatPath": "v3/folders/{foldersId}/boundaries/{boundariesId}", + "httpMethod": "PATCH", + "id": "cloudresourcemanager.folders.boundaries.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The unique resource name of the Boundary. Format: - `organizations/{organization_id}/boundaries/{boundary_id}` - `folders/{folder_id}/boundaries/{boundary_id}` Example: `folders/123456789/boundaries/my-boundary`", + "location": "path", + "pattern": "^folders/[^/]+/boundaries/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}", + "request": { + "$ref": "Boundary" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "capabilities": { "methods": { "get": { @@ -952,6 +1171,32 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ] }, + "getBoundaryConfig": { + "description": "Retrieves the BoundaryConfig identified by the specified `name` (for example, `folders/123456789/boundaryConfig`).", + "flatPath": "v3/organizations/{organizationsId}/boundaryConfig", + "httpMethod": "GET", + "id": "cloudresourcemanager.organizations.getBoundaryConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the BoundaryConfig to retrieve. Format: `organizations/{organization}/boundaryConfig` or `folders/{folder}/boundaryConfig` Example: `folders/123456789/boundaryConfig`", + "location": "path", + "pattern": "^organizations/[^/]+/boundaryConfig$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "BoundaryConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "getIamPolicy": { "description": "Gets the access control policy for an organization resource. The policy may be empty if no such policy or resource exists. The `resource` field should be the organization's resource name, for example: \"organizations/123\". Authorization requires the IAM permission `resourcemanager.organizations.getIamPolicy` on the specified organization.", "flatPath": "v3/organizations/{organizationsId}:getIamPolicy", @@ -1070,9 +1315,202 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ] + }, + "updateBoundaryConfig": { + "description": "Updates the BoundaryConfig identified by the specified `name` (for example, `folders/123456789/boundaryConfig`).", + "flatPath": "v3/organizations/{organizationsId}/boundaryConfig", + "httpMethod": "PATCH", + "id": "cloudresourcemanager.organizations.updateBoundaryConfig", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The unique resource name of the BoundaryConfig. Format: - `organizations/{organization}/boundaryConfig` - `folders/{folder}/boundaryConfig` Example: `folders/123456789/boundaryConfig`", + "location": "path", + "pattern": "^organizations/[^/]+/boundaryConfig$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}", + "request": { + "$ref": "BoundaryConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { + "boundaries": { + "methods": { + "create": { + "description": "Creates a Boundary under a parent Folder or Organization. Creating a Boundary triggers the creation of a Management Project if one is not supplied.", + "flatPath": "v3/organizations/{organizationsId}/boundaries", + "httpMethod": "POST", + "id": "cloudresourcemanager.organizations.boundaries.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "boundaryId": { + "description": "Required. The user-assigned ID for the Boundary, which will become the final component of the Boundary's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-boundary-123`", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource under which the Boundary will be created. Format: `organizations/{organization_id}` or `folders/{folder_id}`", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+parent}/boundaries", + "request": { + "$ref": "Boundary" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`).", + "flatPath": "v3/organizations/{organizationsId}/boundaries/{boundariesId}", + "httpMethod": "DELETE", + "id": "cloudresourcemanager.organizations.boundaries.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Boundary to delete. Format: `organizations/{organization_id}/boundaries/{boundary_id}` or `folders/{folder_id}/boundaries/{boundary_id}`", + "location": "path", + "pattern": "^organizations/[^/]+/boundaries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`).", + "flatPath": "v3/organizations/{organizationsId}/boundaries/{boundariesId}", + "httpMethod": "GET", + "id": "cloudresourcemanager.organizations.boundaries.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the Boundary to retrieve. Format: `organizations/{organization_id}/boundaries/{boundary_id}` or `folders/{folder_id}/boundaries/{boundary_id}` Example: `folders/123456789/boundaries/my-boundary`", + "location": "path", + "pattern": "^organizations/[^/]+/boundaries/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+name}", + "response": { + "$ref": "Boundary" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "list": { + "description": "Lists Boundaries that are direct children of the specified organization or folder resource.", + "flatPath": "v3/organizations/{organizationsId}/boundaries", + "httpMethod": "GET", + "id": "cloudresourcemanager.organizations.boundaries.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of Boundaries to return in the response. The service may return fewer Boundaries than requested. If unspecified, at most 100 Boundaries will be returned. The maximum value is 100; values above 100 will be coerced to 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A pagination token received from a previous call to `ListBoundaries` that indicates from where listing should continue. Provide this to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The name of the parent resource whose Boundaries are being listed. Format: `organizations/{organization_id}` or `folders/{folder_id}`", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v3/{+parent}/boundaries", + "response": { + "$ref": "ListBoundariesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "patch": { + "description": "Updates the `display_name` and `resource_filter.tag_filter.tag_value` of the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`).", + "flatPath": "v3/organizations/{organizationsId}/boundaries/{boundariesId}", + "httpMethod": "PATCH", + "id": "cloudresourcemanager.organizations.boundaries.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The unique resource name of the Boundary. Format: - `organizations/{organization_id}/boundaries/{boundary_id}` - `folders/{folder_id}/boundaries/{boundary_id}` Example: `folders/123456789/boundaries/my-boundary`", + "location": "path", + "pattern": "^organizations/[^/]+/boundaries/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. The list of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v3/{+name}", + "request": { + "$ref": "Boundary" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "capabilityConfigs": { "methods": { "create": { @@ -2475,7 +2913,7 @@ } } }, - "revision": "20261011", + "revision": "20261018", "rootUrl": "https://cloudresourcemanager.googleapis.com/", "schemas": { "AuditConfig": { @@ -2548,6 +2986,86 @@ }, "type": "object" }, + "Boundary": { + "description": "A Boundary is a collection of projects defined by a filtering criteria on an organization or a folder.", + "id": "Boundary", + "properties": { + "createTime": { + "description": "Output only. The creation time of the Boundary.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Optional. Human-readable display name of the Boundary. When present it must be between 4 to 30 characters. Allowed characters are: lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote, space, and exclamation point. Example: `My Production Boundary`", + "type": "string" + }, + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "managementProject": { + "description": "Output only. The Management Project of the CapabilityConfig this Boundary is associated with. Will be empty if the Boundary is not associated with any CapabilityConfig. Format: `projects/{project_number}` Example: `projects/123456789012`", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The unique resource name of the Boundary. Format: - `organizations/{organization_id}/boundaries/{boundary_id}` - `folders/{folder_id}/boundaries/{boundary_id}` Example: `folders/123456789/boundaries/my-boundary`", + "type": "string" + }, + "resourceFilter": { + "$ref": "ResourceFilter", + "description": "Optional. The filter defining the criteria for descendant projects to be included in the Boundary. Descendant projects are dynamically included in the Boundary based on this filter." + }, + "state": { + "description": "Output only. The lifecycle state of the Boundary.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE" + ], + "enumDescriptions": [ + "Unspecified state.", + "Boundary is being created.", + "Boundary is operational, and the management project is fully active." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The most recent time this Boundary was modified.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "BoundaryConfig": { + "description": "A BoundaryConfig defines the common configurations regarding Boundaries defined under a parent CRM node (Folder or Organization), such as the partitioning tag key.", + "id": "BoundaryConfig", + "properties": { + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "name": { + "description": "Identifier. The unique resource name of the BoundaryConfig. Format: - `organizations/{organization}/boundaryConfig` - `folders/{folder}/boundaryConfig` Example: `folders/123456789/boundaryConfig`", + "type": "string" + }, + "tagKey": { + "description": "Optional. The namespaced name of the tag key. Format: `{parent_id}/{tag_key_short_name}` Example: `123456789012/env` (where 123456789012 is the organization ID).", + "type": "string" + }, + "updateTime": { + "description": "Output only. The most recent time this BoundaryConfig was modified.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Capability": { "description": "Representation of a Capability.", "id": "Capability", @@ -3143,6 +3661,24 @@ }, "type": "object" }, + "ListBoundariesResponse": { + "description": "A page of the response received from the ListBoundaries method. A paginated response where more pages are available has `next_page_token` set. This token can be used in a subsequent request to retrieve the next page. NOTE: A response may contain fewer elements than the request `page_size` and still have a `next_page_token`.", + "id": "ListBoundariesResponse", + "properties": { + "boundaries": { + "description": "The list of Boundaries under the parent. This list can be paginated.", + "items": { + "$ref": "Boundary" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Pagination token. If the result set is too large to fit in a single response, this token is returned. It encodes the position of the current result cursor. Feeding this value into a new list request with the `page_token` parameter gives the next page of the results. When `next_page_token` is not filled in, there is no next page and the list returned is the last page in the result set.", + "type": "string" + } + }, + "type": "object" + }, "ListCapabilityConfigsResponse": { "description": "A page of the response received from the ListCapabilityConfigs method. A paginated response where more pages are available has `next_page_token` set. This token can be used in a subsequent request to retrieve the next page. NOTE: A response may contain fewer elements than the request `page_size` and still have a `next_page_token`.", "id": "ListCapabilityConfigsResponse", @@ -3586,6 +4122,17 @@ }, "type": "object" }, + "ResourceFilter": { + "description": "Filter to define the criteria for including projects in the Boundary.", + "id": "ResourceFilter", + "properties": { + "tagFilter": { + "$ref": "TagFilter", + "description": "A tag based filter. A project must match it to be included." + } + }, + "type": "object" + }, "SearchFoldersResponse": { "description": "The response message for searching folders.", "id": "SearchFoldersResponse", @@ -3733,6 +4280,21 @@ }, "type": "object" }, + "TagFilter": { + "description": "Matches projects based on a specific tag key and a specific tag value.", + "id": "TagFilter", + "properties": { + "tagKey": { + "description": "Required. Immutable. The namespaced name of the tag key. Format: `{parent_id}/{tag_key_short_name}` Example: `123456789012/env` (where 123456789012 is the organization ID).", + "type": "string" + }, + "tagValue": { + "description": "Required. The allowed value for the tag key. A project matches this tag filter if its effective tag value for the given `tag_key` matches this value. Format: short name of the tag value. Example: `production` or `staging`.", + "type": "string" + } + }, + "type": "object" + }, "TagHold": { "description": "A TagHold represents the use of a TagValue that is not captured by TagBindings. If a TagValue has any TagHolds, deletion will be blocked. This resource is intended to be created in the same cloud location as the `holder`.", "id": "TagHold", diff --git a/discovery/compute-alpha.json b/discovery/compute-alpha.json index b88b841282..f5035e4531 100644 --- a/discovery/compute-alpha.json +++ b/discovery/compute-alpha.json @@ -17575,13 +17575,15 @@ "INVALID", "NO_EFFECT", "REFRESH", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "", "No changes can be made to the instance.", "The instance will not restart.", - "The instance will restart, potentially on a different host." + "The instance will restart, potentially on a different host.", + "The instance will restart on the same host. Data on all local SSDs\nwill be preserved." ], "location": "query", "type": "string" @@ -17592,13 +17594,15 @@ "INVALID", "NO_EFFECT", "REFRESH", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "", "No changes can be made to the instance.", "The instance will not restart.", - "The instance will restart, potentially on a different host." + "The instance will restart, potentially on a different host.", + "The instance will restart on the same host. Data on all local SSDs\nwill be preserved." ], "location": "query", "type": "string" @@ -58440,7 +58444,7 @@ } } }, - "revision": "20261007", + "revision": "20261016", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -58509,7 +58513,7 @@ "additionalProperties": { "$ref": "ManagementInterface" }, - "description": "Map of management interfaces. Keys must be valid RFC1035 names and at most\n63 characters long.", + "description": "Map of management interfaces. Keys must be valid RFC1035 names and at most\n63 characters long.\nFor TYPE_NVLINK_SWITCH_MONITORING interfaces, keys must match the pattern\n\"gnmi-nvswitch-[0-8]\" (e.g., \"gnmi-nvswitch-0\" through \"gnmi-nvswitch-8\").\nFor TYPE_NVLINK_SWITCH_DEBUG interfaces, keys must match the pattern\n\"gnoi-nvswitch-[0-8]\" (e.g., \"gnoi-nvswitch-0\" through \"gnoi-nvswitch-8\").", "type": "object" }, "name": { @@ -63639,7 +63643,7 @@ "id": "BackendServiceHAPolicy", "properties": { "fastIPMove": { - "description": "Specifies whether fast IP move is enabled, and if so, the mechanism to\nachieve it.\n\nSupported values are:\n \n - DISABLED: Fast IP Move is disabled. You can only use the\n haPolicy.leader API to update the leader.\n - >GARP_RA: Provides a method to very quickly define a new network\n endpoint as the leader. This method is faster than updating the leader\n using the haPolicy.leader API. Fast IP move works as follows: The VM\n hosting the network endpoint that should become the new leader sends\n either a Gratuitous ARP (GARP) packet (IPv4) or an ICMPv6 Router\n Advertisement(RA) packet (IPv6). Google Cloud immediately but\n temporarily associates the forwarding rule IP address with that VM, and\n both new and in-flight packets are quickly delivered to that VM.\n\n\n\nNote the important properties of the Fast IP Move functionality:\n \n - The GARP/RA-initiated re-routing stays active for approximately 20\n minutes. After triggering fast failover, you must also\n appropriately set the haPolicy.leader.\n - The new leader instance should continue to send GARP/RA packets\n periodically every 10 seconds until at least 10 minutes after updating\n the haPolicy.leader (but stop immediately if it is no longer the leader).\n - After triggering a fast failover, we recommend that you wait at least\n 3 seconds before sending another GARP/RA packet from a different VM\n instance to avoid race conditions.\n - Don't send GARP/RA packets from different VM\n instances at the same time. If multiple instances continue to send\n GARP/RA packets, traffic might be routed to different destinations in an\n alternating order. This condition ceases when a single instance\n issues a GARP/RA packet.\n - The GARP/RA request always takes priority over the leader API.\n Using the haPolicy.leader API to change the leader to a different\n instance will have no effect until the GARP/RA request becomes\n inactive.\n - The GARP/RA packets should follow the GARP/RA\n Packet Specifications..\n - When multiple forwarding rules refer to a regional backend service,\n you need only send a GARP or RA packet for a single forwarding rule\n virtual IP. The virtual IPs for all forwarding rules targeting the same\n backend service will also be moved to the sender of the GARP or RA\n packet. \n\n\n\nThe following are the Fast IP Move limitations (that is, when fastIPMove\nis not DISABLED):\n \n - Multiple forwarding rules cannot use the same IP address if one of\n them refers to a regional backend service with fastIPMove.\n - The regional backend service must set the network field, and all\n NEGs must belong to that network. However, individual\n NEGs can belong to different subnetworks of that network. \n - The maximum number of network endpoints across all backends of a\n backend service with fastIPMove is 32.\n - The maximum number of backend services with fastIPMove that can have\n the same network endpoint attached to one of its backends is 64.\n - The maximum number of backend services with fastIPMove in a VPC in a\n region is 64.\n - The network endpoints that are attached to a backend of a backend\n service with fastIPMove cannot resolve to Gen3+ machines for IPv6.\n - Traffic directed to the leader by a static route next hop will not be\n redirected to a new leader by fast failover. Such traffic will only be\n redirected once an haPolicy.leader update has taken effect. Only traffic\n to the forwarding rule's virtual IP will be redirected to a new leader by\n fast failover.\n\n\nhaPolicy.fastIPMove can be set only at backend service creation time.\nOnce set, it cannot be updated.\n\nBy default, fastIpMove is set to DISABLED.", + "description": "Specifies whether fast IP move is enabled, and if so, the mechanism to\nachieve it.\n\nSupported values are:\n \n - DISABLED: Fast IP Move is disabled. You can only use the\n haPolicy.leader API to update the leader.\n - >GARP_RA: Provides a method to very quickly define a new network\n endpoint as the leader. This method is faster than updating the leader\n using the haPolicy.leader API. Fast IP move works as follows: The VM\n hosting the network endpoint that should become the new leader sends\n either a Gratuitous ARP (GARP) packet (IPv4) or an ICMPv6 Router\n Advertisement(RA) packet (IPv6). Google Cloud immediately but\n temporarily associates the forwarding rule IP address with that VM, and\n both new and in-flight packets are quickly delivered to that VM.\n - HA_CONTROLLER: The Backend Service is managed by a High Availability\n Controller. Failover and leader election are exclusively managed by the\n HA Controller service.\n\n\n\nNote the important properties of the Fast IP Move functionality:\n \n - The GARP/RA-initiated re-routing stays active for approximately 20\n minutes. After triggering fast failover, you must also\n appropriately set the haPolicy.leader.\n - The new leader instance should continue to send GARP/RA packets\n periodically every 10 seconds until at least 10 minutes after updating\n the haPolicy.leader (but stop immediately if it is no longer the leader).\n - After triggering a fast failover, we recommend that you wait at least\n 3 seconds before sending another GARP/RA packet from a different VM\n instance to avoid race conditions.\n - Don't send GARP/RA packets from different VM\n instances at the same time. If multiple instances continue to send\n GARP/RA packets, traffic might be routed to different destinations in an\n alternating order. This condition ceases when a single instance\n issues a GARP/RA packet.\n - The GARP/RA request always takes priority over the leader API.\n Using the haPolicy.leader API to change the leader to a different\n instance will have no effect until the GARP/RA request becomes\n inactive.\n - The GARP/RA packets should follow the GARP/RA\n Packet Specifications..\n - When multiple forwarding rules refer to a regional backend service,\n you need only send a GARP or RA packet for a single forwarding rule\n virtual IP. The virtual IPs for all forwarding rules targeting the same\n backend service will also be moved to the sender of the GARP or RA\n packet. \n\n\n\nThe following are the Fast IP Move limitations (that is, when fastIPMove\nis not DISABLED):\n \n - Multiple forwarding rules cannot use the same IP address if one of\n them refers to a regional backend service with fastIPMove.\n - The regional backend service must set the network field, and all\n NEGs must belong to that network. However, individual\n NEGs can belong to different subnetworks of that network. \n - The maximum number of network endpoints across all backends of a\n backend service with fastIPMove is 32.\n - The maximum number of backend services with fastIPMove that can have\n the same network endpoint attached to one of its backends is 64.\n - The maximum number of backend services with fastIPMove in a VPC in a\n region is 64.\n - The network endpoints that are attached to a backend of a backend\n service with fastIPMove cannot resolve to Gen3+ machines for IPv6.\n - Traffic directed to the leader by a static route next hop will not be\n redirected to a new leader by fast failover. Such traffic will only be\n redirected once an haPolicy.leader update has taken effect. Only traffic\n to the forwarding rule's virtual IP will be redirected to a new leader by\n fast failover.\n\n\nhaPolicy.fastIPMove can be set only at backend service creation time.\nOnce set, it cannot be updated.\n\nBy default, fastIpMove is set to DISABLED.", "enum": [ "DISABLED", "GARP_RA" @@ -64890,7 +64894,7 @@ }, "instanceFlexibilityPolicy": { "$ref": "InstanceFlexibilityPolicy", - "description": "A flexible specification of machine type of instances to create." + "description": "A specification of alternative machine types to use when creating\ninstances. A single bulkInsert request can create instances with multiple\ndifferent machine types based on capacity and quota availability. This\nfield is supported only for regional bulkInsert requests. For more\ninformation, see About\ninstance flexibility for VMs created in bulk." }, "instanceProperties": { "$ref": "InstanceProperties", @@ -65045,7 +65049,7 @@ "type": "string" }, "host": { - "description": "If set, this invalidation rule will only apply to requests with a Host\nheader matching host.", + "description": "If set, this invalidation rule will only apply to requests with a Host\nheader matching host. This field also accepts wildcards (*) to replace the\nleftmost (or first) label of a hostname. For example, *.example.com will\nmatch www.example.com, but not sub1.dev.example.com.", "type": "string" }, "httpStatus": { @@ -66099,6 +66103,7 @@ "COMPUTE_OPTIMIZED_C3D", "COMPUTE_OPTIMIZED_H3", "COMPUTE_OPTIMIZED_H4D", + "COMPUTE_OPTIMIZED_H4D_3TB", "GENERAL_PURPOSE", "GENERAL_PURPOSE_C4", "GENERAL_PURPOSE_C4A", @@ -66156,6 +66161,7 @@ "", "", "", + "CUD bucket for COMPUTE_OPTIMIZED_H4D_3TB machines.", "", "", "", @@ -66173,8 +66179,8 @@ "", "", "", - "", - "", + "CUD bucket for M4N machines with less than 6TB of memory.", + "CUD bucket for M4N machines with 6TB of memory.", "", "", "CUD bucket for X4 machine with 1440 vCPUs and 24TB of memory.", @@ -81564,7 +81570,7 @@ "additionalProperties": { "$ref": "InstanceFlexibilityPolicyInstanceSelection" }, - "description": "Specification of alternative, flexible instance subsets.\nOne of them will be selected to create the instances\nbased on various criteria, like:\n- ranks,\n- location policy,\n- current capacity,\n- available reservations (you can specify affinity in\nInstanceProperties),\n- SWAN/GOOSE limitations.\nKey is an arbitrary, unique RFC1035 string that identifies the instance\nselection.", + "description": "Specifies named instance selections that define properties for instances\ncreated in bulk.\nKey is an arbitrary, unique RFC1035 string that identifies the instance\nselection.", "type": "object" } }, @@ -95214,11 +95220,13 @@ "description": "Required. The type of management service this interface provides.\nSupported types include NMX-C for partition management and gNMI for switch\nmonitoring.", "enum": [ "TYPE_NVLINK_PARTITION_MANAGEMENT", + "TYPE_NVLINK_SWITCH_DEBUG", "TYPE_NVLINK_SWITCH_MONITORING", "TYPE_UNSPECIFIED" ], "enumDescriptions": [ "", + "Management interface for NVLink switch debugging via gNOI.", "", "" ], @@ -119558,7 +119566,7 @@ "description": "DEPRECATED: please use skipGuestOsShutdown.\nTimeout between GCE ACPI G2 Soft\nOff and ACPI G3 Mechanical\nOff during shutdown operation of VM.\n\nFor Standard VMs values between 0s and 120s are allowed. For Spot and\nPreemptible VMs supported values are between 0s and 30s.\n\nIf no value is specified for shutdownDuration, default values are 90s for\nStandard VMs and 30s for Spot/Preemptible VMs." }, "skipGuestOsShutdown": { - "description": "Default is false and there will be 120 seconds between GCE ACPI G2 Soft\nOff and ACPI G3 Mechanical\nOff for Standard VMs and 30 seconds for Spot VMs.", + "description": "Defines whether GCE ACPI G2 Soft\nOff signal should be skipped during shutdown operation of VM.\n\nDefault is false, meaning there will be 120 seconds between GCE ACPI G2 Soft\nOff and ACPI G3 Mechanical\nOff for Standard VMs and 30 seconds for Spot VMs.", "type": "boolean" }, "terminationTime": { @@ -135572,10 +135580,12 @@ "id": "VpnTunnelCipherSuite", "properties": { "phase1": { - "$ref": "VpnTunnelPhase1Algorithms" + "$ref": "VpnTunnelPhase1Algorithms", + "description": "Cipher algorithms for IKE phase 1." }, "phase2": { - "$ref": "VpnTunnelPhase2Algorithms" + "$ref": "VpnTunnelPhase2Algorithms", + "description": "Cipher algorithms for IKE phase 2." } }, "type": "object" @@ -135754,24 +135764,28 @@ "id": "VpnTunnelPhase1Algorithms", "properties": { "dh": { + "description": "Diffie-Hellman groups for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "encryption": { + "description": "Encryption algorithms for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "integrity": { + "description": "Integrity algorithms for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "prf": { + "description": "Pseudo-random functions (PRF) for IKE phase 1.", "items": { "type": "string" }, @@ -135784,18 +135798,21 @@ "id": "VpnTunnelPhase2Algorithms", "properties": { "encryption": { + "description": "Encryption algorithms for IKE phase 2.", "items": { "type": "string" }, "type": "array" }, "integrity": { + "description": "Integrity algorithms for IKE phase 2.", "items": { "type": "string" }, "type": "array" }, "pfs": { + "description": "Perfect Forward Secrecy (PFS) groups for IKE phase 2.", "items": { "type": "string" }, diff --git a/discovery/compute-beta.json b/discovery/compute-beta.json index 260b362d6d..5f53498068 100644 --- a/discovery/compute-beta.json +++ b/discovery/compute-beta.json @@ -15809,13 +15809,15 @@ "INVALID", "NO_EFFECT", "REFRESH", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "", "No changes can be made to the instance.", "The instance will not restart.", - "The instance will restart, potentially on a different host." + "The instance will restart, potentially on a different host.", + "The instance will restart on the same host. Data on all local SSDs\nwill be preserved." ], "location": "query", "type": "string" @@ -15826,13 +15828,15 @@ "INVALID", "NO_EFFECT", "REFRESH", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "", "No changes can be made to the instance.", "The instance will not restart.", - "The instance will restart, potentially on a different host." + "The instance will restart, potentially on a different host.", + "The instance will restart on the same host. Data on all local SSDs\nwill be preserved." ], "location": "query", "type": "string" @@ -54393,7 +54397,7 @@ } } }, - "revision": "20261007", + "revision": "20261016", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -59089,7 +59093,7 @@ "id": "BackendServiceHAPolicy", "properties": { "fastIPMove": { - "description": "Specifies whether fast IP move is enabled, and if so, the mechanism to\nachieve it.\n\nSupported values are:\n \n - DISABLED: Fast IP Move is disabled. You can only use the\n haPolicy.leader API to update the leader.\n - >GARP_RA: Provides a method to very quickly define a new network\n endpoint as the leader. This method is faster than updating the leader\n using the haPolicy.leader API. Fast IP move works as follows: The VM\n hosting the network endpoint that should become the new leader sends\n either a Gratuitous ARP (GARP) packet (IPv4) or an ICMPv6 Router\n Advertisement(RA) packet (IPv6). Google Cloud immediately but\n temporarily associates the forwarding rule IP address with that VM, and\n both new and in-flight packets are quickly delivered to that VM.\n\n\n\nNote the important properties of the Fast IP Move functionality:\n \n - The GARP/RA-initiated re-routing stays active for approximately 20\n minutes. After triggering fast failover, you must also\n appropriately set the haPolicy.leader.\n - The new leader instance should continue to send GARP/RA packets\n periodically every 10 seconds until at least 10 minutes after updating\n the haPolicy.leader (but stop immediately if it is no longer the leader).\n - After triggering a fast failover, we recommend that you wait at least\n 3 seconds before sending another GARP/RA packet from a different VM\n instance to avoid race conditions.\n - Don't send GARP/RA packets from different VM\n instances at the same time. If multiple instances continue to send\n GARP/RA packets, traffic might be routed to different destinations in an\n alternating order. This condition ceases when a single instance\n issues a GARP/RA packet.\n - The GARP/RA request always takes priority over the leader API.\n Using the haPolicy.leader API to change the leader to a different\n instance will have no effect until the GARP/RA request becomes\n inactive.\n - The GARP/RA packets should follow the GARP/RA\n Packet Specifications..\n - When multiple forwarding rules refer to a regional backend service,\n you need only send a GARP or RA packet for a single forwarding rule\n virtual IP. The virtual IPs for all forwarding rules targeting the same\n backend service will also be moved to the sender of the GARP or RA\n packet. \n\n\n\nThe following are the Fast IP Move limitations (that is, when fastIPMove\nis not DISABLED):\n \n - Multiple forwarding rules cannot use the same IP address if one of\n them refers to a regional backend service with fastIPMove.\n - The regional backend service must set the network field, and all\n NEGs must belong to that network. However, individual\n NEGs can belong to different subnetworks of that network. \n - The maximum number of network endpoints across all backends of a\n backend service with fastIPMove is 32.\n - The maximum number of backend services with fastIPMove that can have\n the same network endpoint attached to one of its backends is 64.\n - The maximum number of backend services with fastIPMove in a VPC in a\n region is 64.\n - The network endpoints that are attached to a backend of a backend\n service with fastIPMove cannot resolve to Gen3+ machines for IPv6.\n - Traffic directed to the leader by a static route next hop will not be\n redirected to a new leader by fast failover. Such traffic will only be\n redirected once an haPolicy.leader update has taken effect. Only traffic\n to the forwarding rule's virtual IP will be redirected to a new leader by\n fast failover.\n\n\nhaPolicy.fastIPMove can be set only at backend service creation time.\nOnce set, it cannot be updated.\n\nBy default, fastIpMove is set to DISABLED.", + "description": "Specifies whether fast IP move is enabled, and if so, the mechanism to\nachieve it.\n\nSupported values are:\n \n - DISABLED: Fast IP Move is disabled. You can only use the\n haPolicy.leader API to update the leader.\n - >GARP_RA: Provides a method to very quickly define a new network\n endpoint as the leader. This method is faster than updating the leader\n using the haPolicy.leader API. Fast IP move works as follows: The VM\n hosting the network endpoint that should become the new leader sends\n either a Gratuitous ARP (GARP) packet (IPv4) or an ICMPv6 Router\n Advertisement(RA) packet (IPv6). Google Cloud immediately but\n temporarily associates the forwarding rule IP address with that VM, and\n both new and in-flight packets are quickly delivered to that VM.\n - HA_CONTROLLER: The Backend Service is managed by a High Availability\n Controller. Failover and leader election are exclusively managed by the\n HA Controller service.\n\n\n\nNote the important properties of the Fast IP Move functionality:\n \n - The GARP/RA-initiated re-routing stays active for approximately 20\n minutes. After triggering fast failover, you must also\n appropriately set the haPolicy.leader.\n - The new leader instance should continue to send GARP/RA packets\n periodically every 10 seconds until at least 10 minutes after updating\n the haPolicy.leader (but stop immediately if it is no longer the leader).\n - After triggering a fast failover, we recommend that you wait at least\n 3 seconds before sending another GARP/RA packet from a different VM\n instance to avoid race conditions.\n - Don't send GARP/RA packets from different VM\n instances at the same time. If multiple instances continue to send\n GARP/RA packets, traffic might be routed to different destinations in an\n alternating order. This condition ceases when a single instance\n issues a GARP/RA packet.\n - The GARP/RA request always takes priority over the leader API.\n Using the haPolicy.leader API to change the leader to a different\n instance will have no effect until the GARP/RA request becomes\n inactive.\n - The GARP/RA packets should follow the GARP/RA\n Packet Specifications..\n - When multiple forwarding rules refer to a regional backend service,\n you need only send a GARP or RA packet for a single forwarding rule\n virtual IP. The virtual IPs for all forwarding rules targeting the same\n backend service will also be moved to the sender of the GARP or RA\n packet. \n\n\n\nThe following are the Fast IP Move limitations (that is, when fastIPMove\nis not DISABLED):\n \n - Multiple forwarding rules cannot use the same IP address if one of\n them refers to a regional backend service with fastIPMove.\n - The regional backend service must set the network field, and all\n NEGs must belong to that network. However, individual\n NEGs can belong to different subnetworks of that network. \n - The maximum number of network endpoints across all backends of a\n backend service with fastIPMove is 32.\n - The maximum number of backend services with fastIPMove that can have\n the same network endpoint attached to one of its backends is 64.\n - The maximum number of backend services with fastIPMove in a VPC in a\n region is 64.\n - The network endpoints that are attached to a backend of a backend\n service with fastIPMove cannot resolve to Gen3+ machines for IPv6.\n - Traffic directed to the leader by a static route next hop will not be\n redirected to a new leader by fast failover. Such traffic will only be\n redirected once an haPolicy.leader update has taken effect. Only traffic\n to the forwarding rule's virtual IP will be redirected to a new leader by\n fast failover.\n\n\nhaPolicy.fastIPMove can be set only at backend service creation time.\nOnce set, it cannot be updated.\n\nBy default, fastIpMove is set to DISABLED.", "enum": [ "DISABLED", "GARP_RA" @@ -60279,7 +60283,7 @@ }, "instanceFlexibilityPolicy": { "$ref": "InstanceFlexibilityPolicy", - "description": "A flexible specification of machine type of instances to create." + "description": "A specification of alternative machine types to use when creating\ninstances. A single bulkInsert request can create instances with multiple\ndifferent machine types based on capacity and quota availability. This\nfield is supported only for regional bulkInsert requests. For more\ninformation, see About\ninstance flexibility for VMs created in bulk." }, "instanceProperties": { "$ref": "InstanceProperties", @@ -60434,7 +60438,7 @@ "type": "string" }, "host": { - "description": "If set, this invalidation rule will only apply to requests with a Host\nheader matching host.", + "description": "If set, this invalidation rule will only apply to requests with a Host\nheader matching host. This field also accepts wildcards (*) to replace the\nleftmost (or first) label of a hostname. For example, *.example.com will\nmatch www.example.com, but not sub1.dev.example.com.", "type": "string" }, "httpStatus": { @@ -61325,6 +61329,7 @@ "COMPUTE_OPTIMIZED_C3D", "COMPUTE_OPTIMIZED_H3", "COMPUTE_OPTIMIZED_H4D", + "COMPUTE_OPTIMIZED_H4D_3TB", "GENERAL_PURPOSE", "GENERAL_PURPOSE_C4", "GENERAL_PURPOSE_C4A", @@ -61375,6 +61380,7 @@ "", "", "", + "CUD bucket for COMPUTE_OPTIMIZED_H4D_3TB machines.", "", "", "", @@ -74847,7 +74853,7 @@ "additionalProperties": { "$ref": "InstanceFlexibilityPolicyInstanceSelection" }, - "description": "Specification of alternative, flexible instance subsets.\nOne of them will be selected to create the instances\nbased on various criteria, like:\n- ranks,\n- location policy,\n- current capacity,\n- available reservations (you can specify affinity in\nInstanceProperties),\n- SWAN/GOOSE limitations.\nKey is an arbitrary, unique RFC1035 string that identifies the instance\nselection.", + "description": "Specifies named instance selections that define properties for instances\ncreated in bulk.\nKey is an arbitrary, unique RFC1035 string that identifies the instance\nselection.", "type": "object" } }, @@ -107207,6 +107213,10 @@ "description": "IPv6 address of the interface inside Google Cloud Platform.", "type": "string" }, + "linkedCustomHardware": { + "description": "The linked custom hardware resource.\nThe URI of the custom hardware link attachment\nis where you will establish the BGP session from the Cloud Router.\nThis link attachment must reside in the same subnetwork as the associated\nrouter interface.", + "type": "string" + }, "managementType": { "description": "Output only. [Output Only] The resource that configures and manages this BGP peer.\n \n - MANAGED_BY_USER is the default value and can be managed by you\n or other users\n - MANAGED_BY_ATTACHMENT is a BGP peer that is configured and managed\n by Cloud Interconnect, specifically by an InterconnectAttachment of type\n PARTNER. Google automatically creates, updates, and deletes this type of\n BGP peer when the PARTNER InterconnectAttachment is created, updated,\n or deleted.", "enum": [ @@ -107970,6 +107980,11 @@ "readOnly": true, "type": "string" }, + "linkedCustomHardware": { + "description": "Output only. The URI of the linked custom hardware resource,\nCustomHardwareLinkAttachment. This CustomHardwareLinkAttachment resource\nis the one that will establish the BGP session from the Cloud Router.", + "readOnly": true, + "type": "string" + }, "linkedVpnTunnel": { "description": "Output only. URL of the VPN tunnel that this BGP peer controls.", "readOnly": true, @@ -109228,7 +109243,7 @@ "type": "string" }, "skipGuestOsShutdown": { - "description": "Default is false and there will be 120 seconds between GCE ACPI G2 Soft\nOff and ACPI G3 Mechanical\nOff for Standard VMs and 30 seconds for Spot VMs.", + "description": "Defines whether GCE ACPI G2 Soft\nOff signal should be skipped during shutdown operation of VM.\n\nDefault is false, meaning there will be 120 seconds between GCE ACPI G2 Soft\nOff and ACPI G3 Mechanical\nOff for Standard VMs and 30 seconds for Spot VMs.", "type": "boolean" }, "terminationTime": { @@ -124472,10 +124487,12 @@ "id": "VpnTunnelCipherSuite", "properties": { "phase1": { - "$ref": "VpnTunnelPhase1Algorithms" + "$ref": "VpnTunnelPhase1Algorithms", + "description": "Cipher algorithms for IKE phase 1." }, "phase2": { - "$ref": "VpnTunnelPhase2Algorithms" + "$ref": "VpnTunnelPhase2Algorithms", + "description": "Cipher algorithms for IKE phase 2." } }, "type": "object" @@ -124654,24 +124671,28 @@ "id": "VpnTunnelPhase1Algorithms", "properties": { "dh": { + "description": "Diffie-Hellman groups for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "encryption": { + "description": "Encryption algorithms for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "integrity": { + "description": "Integrity algorithms for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "prf": { + "description": "Pseudo-random functions (PRF) for IKE phase 1.", "items": { "type": "string" }, @@ -124684,18 +124705,21 @@ "id": "VpnTunnelPhase2Algorithms", "properties": { "encryption": { + "description": "Encryption algorithms for IKE phase 2.", "items": { "type": "string" }, "type": "array" }, "integrity": { + "description": "Integrity algorithms for IKE phase 2.", "items": { "type": "string" }, "type": "array" }, "pfs": { + "description": "Perfect Forward Secrecy (PFS) groups for IKE phase 2.", "items": { "type": "string" }, @@ -125318,6 +125342,19 @@ }, "identityCertificateEnabled": { "type": "boolean" + }, + "identityType": { + "enum": [ + "AGENT_IDENTITY", + "IDENTITY_TYPE_UNSPECIFIED", + "SERVICE_ACCOUNT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" } }, "type": "object" diff --git a/discovery/compute-preview.json b/discovery/compute-preview.json index db63f2b75b..c63c3f248f 100644 --- a/discovery/compute-preview.json +++ b/discovery/compute-preview.json @@ -5873,6 +5873,714 @@ } } }, + "folderGlobalVmExtensionPolicies": { + "methods": { + "aggregatedList": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves the list of all folder level VM Extension Policy resources\navailable to the specified folder.\n\nTo prevent failure, it's recommended that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "folders/{foldersId}/aggregated/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.folderGlobalVmExtensionPolicies.aggregatedList", + "parameterOrder": [ + "folder" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "{+folder}/aggregated/vmExtensionPolicies", + "response": { + "$ref": "FolderVmExtensionPolicyAggregatedListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "apiVersion": "2026-10-01-preview", + "description": "Purge scoped resources (zonal policies) from a folder level global\nVM extension policy, and then delete the global VM extension policy. Purge\nof the scoped resources is a pre-condition of the global VM extension\npolicy deletion. The deletion of the global VM extension policy happens\nafter the purge rollout is done, so it's not a part of the LRO. It's an\nautomatic process that triggers in the backend.", + "flatPath": "folders/{foldersId}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete", + "httpMethod": "POST", + "id": "compute.folderGlobalVmExtensionPolicies.delete", + "parameterOrder": [ + "folder", + "globalVmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "globalVmExtensionPolicy": { + "description": "Name of the global VM extension policy to purge scoped resources for.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{+folder}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete", + "request": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutInput" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "apiVersion": "2026-10-01-preview", + "description": "Gets details of a folder level GlobalVmExtensionPolicy.", + "flatPath": "folders/{foldersId}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "httpMethod": "GET", + "id": "compute.folderGlobalVmExtensionPolicies.get", + "parameterOrder": [ + "folder", + "globalVmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "globalVmExtensionPolicy": { + "description": "Name of the GlobalVmExtensionPolicy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "response": { + "$ref": "GlobalVmExtensionPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getVmExtension": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves details of a specific VM extension.", + "flatPath": "folders/{foldersId}/global/vmExtensions/{extensionName}", + "httpMethod": "GET", + "id": "compute.folderGlobalVmExtensionPolicies.getVmExtension", + "parameterOrder": [ + "folder", + "extensionName" + ], + "parameters": { + "extensionName": { + "description": "Required. Name of the VM extension for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/global/vmExtensions/{extensionName}", + "response": { + "$ref": "GlobalVmExtension" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "apiVersion": "2026-10-01-preview", + "description": "Creates a new folder level GlobalVmExtensionPolicy.", + "flatPath": "folders/{foldersId}/global/vmExtensionPolicies", + "httpMethod": "POST", + "id": "compute.folderGlobalVmExtensionPolicies.insert", + "parameterOrder": [ + "folder" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{+folder}/global/vmExtensionPolicies", + "request": { + "$ref": "GlobalVmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "apiVersion": "2026-10-01-preview", + "description": "Lists folder level GlobalVmExtensionPolicies.", + "flatPath": "folders/{foldersId}/global/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.folderGlobalVmExtensionPolicies.list", + "parameterOrder": [ + "folder" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "{+folder}/global/vmExtensionPolicies", + "response": { + "$ref": "GlobalVmExtensionPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listVmExtensions": { + "apiVersion": "2026-10-01-preview", + "description": "Lists all VM extensions within a folder.\nThis is a read-only API.", + "flatPath": "folders/{foldersId}/global/vmExtensions", + "httpMethod": "GET", + "id": "compute.folderGlobalVmExtensionPolicies.listVmExtensions", + "parameterOrder": [ + "folder" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Required. Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "{+folder}/global/vmExtensions", + "response": { + "$ref": "GlobalListVmExtensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "apiVersion": "2026-10-01-preview", + "description": "Updates a folder level GlobalVmExtensionPolicy.", + "flatPath": "folders/{foldersId}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "httpMethod": "PATCH", + "id": "compute.folderGlobalVmExtensionPolicies.update", + "parameterOrder": [ + "folder", + "globalVmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "globalVmExtensionPolicy": { + "description": "Name of the global VM extension policy to update.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{+folder}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "request": { + "$ref": "GlobalVmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "folderZoneVmExtensionPolicies": { + "methods": { + "delete": { + "apiVersion": "2026-10-01-preview", + "description": "Deletes a specified zone VM extension policy within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "DELETE", + "id": "compute.folderZoneVmExtensionPolicies.delete", + "parameterOrder": [ + "folder", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves details of a specific zone VM extension policy within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "GET", + "id": "compute.folderZoneVmExtensionPolicies.get", + "parameterOrder": [ + "folder", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the VM extension policy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "VmExtensionPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getVmExtension": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves details of a specific VM extension within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensions/{extensionName}", + "httpMethod": "GET", + "id": "compute.folderZoneVmExtensionPolicies.getVmExtension", + "parameterOrder": [ + "folder", + "zone", + "extensionName" + ], + "parameters": { + "extensionName": { + "description": "Required. Name of the VM extension for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensions/{extensionName}", + "response": { + "$ref": "VmExtension" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "apiVersion": "2026-10-01-preview", + "description": "Creates a new zone-level VM extension policy within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "POST", + "id": "compute.folderZoneVmExtensionPolicies.insert", + "parameterOrder": [ + "folder", + "zone" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "apiVersion": "2026-10-01-preview", + "description": "Lists all VM extension policies within a specific zone for a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.folderZoneVmExtensionPolicies.list", + "parameterOrder": [ + "folder", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies", + "response": { + "$ref": "VmExtensionPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listVmExtensions": { + "apiVersion": "2026-10-01-preview", + "description": "Lists all VM extensions within a specific zone for a folder.\nThis is a read-only API.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensions", + "httpMethod": "GET", + "id": "compute.folderZoneVmExtensionPolicies.listVmExtensions", + "parameterOrder": [ + "folder", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensions", + "response": { + "$ref": "ListVmExtensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "apiVersion": "2026-10-01-preview", + "description": "Modifies an existing zone VM extension policy within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "PATCH", + "id": "compute.folderZoneVmExtensionPolicies.update", + "parameterOrder": [ + "folder", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "forwardingRules": { "methods": { "aggregatedList": { @@ -6939,6 +7647,97 @@ } } }, + "globalFolderOperations": { + "methods": { + "get": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves the specified Operations resource.", + "flatPath": "folders/{foldersId}/global/operations/{operation}", + "httpMethod": "GET", + "id": "compute.globalFolderOperations.get", + "parameterOrder": [ + "folder", + "operation" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/global/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves a list of Operation resources contained within the specified\nfolder.", + "flatPath": "folders/{foldersId}/global/operations", + "httpMethod": "GET", + "id": "compute.globalFolderOperations.list", + "parameterOrder": [ + "folder" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "{+folder}/global/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "globalForwardingRules": { "methods": { "delete": { @@ -8302,6 +9101,41 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getVmExtension": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves details of a specific VM extension.", + "flatPath": "projects/{project}/global/vmExtensions/{extensionName}", + "httpMethod": "GET", + "id": "compute.globalVmExtensionPolicies.getVmExtension", + "parameterOrder": [ + "project", + "extensionName" + ], + "parameters": { + "extensionName": { + "description": "Required. Name of the VM extension for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/vmExtensions/{extensionName}", + "response": { + "$ref": "GlobalVmExtension" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "insert": { "apiVersion": "2026-10-01-preview", "description": "Creates a new project level GlobalVmExtensionPolicy.", @@ -8388,6 +9222,57 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "listVmExtensions": { + "apiVersion": "2026-10-01-preview", + "description": "Lists all VM extensions within a specific zone for a project.\nThis is a read-only API.", + "flatPath": "projects/{project}/global/vmExtensions", + "httpMethod": "GET", + "id": "compute.globalVmExtensionPolicies.listVmExtensions", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Required. Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/vmExtensions", + "response": { + "$ref": "GlobalListVmExtensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "update": { "apiVersion": "2026-10-01-preview", "description": "Updates a global VM extension policy.", @@ -15025,212 +15910,9 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy", - "request": { - "$ref": "ShieldedInstanceIntegrityPolicy" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "setTags": { - "apiVersion": "2026-10-01-preview", - "description": "Sets network tags\nfor the specified instance to the data included in the request.", - "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setTags", - "httpMethod": "POST", - "id": "compute.instances.setTags", - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "parameters": { - "instance": { - "description": "Name of the instance scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/instances/{instance}/setTags", - "request": { - "$ref": "Tags" - }, - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "simulateMaintenanceEvent": { - "apiVersion": "2026-10-01-preview", - "description": "Simulates a host maintenance event on a VM. For more information, see\nSimulate a host maintenance event.", - "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", - "httpMethod": "POST", - "id": "compute.instances.simulateMaintenanceEvent", - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "parameters": { - "instance": { - "description": "Name of the instance scoping this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "withExtendedNotifications": { - "description": "Determines whether the customers receive notifications before migration.\nOnly applicable to SF vms.", - "location": "query", - "type": "boolean" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "start": { - "apiVersion": "2026-10-01-preview", - "description": "Starts an instance that was stopped using theinstances().stop\nmethod. For more information, seeRestart an\ninstance.", - "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/start", - "httpMethod": "POST", - "id": "compute.instances.start", - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "parameters": { - "instance": { - "description": "Name of the instance resource to start.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/instances/{instance}/start", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] - }, - "startWithEncryptionKey": { - "apiVersion": "2026-10-01-preview", - "description": "Starts an instance that was stopped using theinstances().stop\nmethod. For more information, seeRestart an\ninstance.", - "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", - "httpMethod": "POST", - "id": "compute.instances.startWithEncryptionKey", - "parameterOrder": [ - "project", - "zone", - "instance" - ], - "parameters": { - "instance": { - "description": "Name of the instance resource to start.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", - "location": "query", - "type": "string" - }, - "zone": { - "description": "The name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "path": "projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy", "request": { - "$ref": "InstancesStartWithEncryptionKeyRequest" + "$ref": "ShieldedInstanceIntegrityPolicy" }, "response": { "$ref": "Operation" @@ -15240,35 +15922,25 @@ "https://www.googleapis.com/auth/compute" ] }, - "stop": { + "setTags": { "apiVersion": "2026-10-01-preview", - "description": "Stops a running instance, shutting it down cleanly, and allows\nyou to restart the instance at a later time. Stopped instances do not incur\nVM usage charges while they are stopped. However, resources that the VM is\nusing, such as persistent disks and static IP addresses, will continue to\nbe charged until they are deleted. For more information, seeStopping\nan instance.", - "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/stop", + "description": "Sets network tags\nfor the specified instance to the data included in the request.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setTags", "httpMethod": "POST", - "id": "compute.instances.stop", + "id": "compute.instances.setTags", "parameterOrder": [ "project", "zone", "instance" ], "parameters": { - "discardLocalSsd": { - "description": "This property is required if the instance has any attached Local SSD disks.\nIf false, Local SSD data will be preserved when the instance is suspended.\nIf true, the contents of any attached Local SSD disks will be discarded.", - "location": "query", - "type": "boolean" - }, "instance": { - "description": "Name of the instance resource to stop.", + "description": "Name of the instance scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "noGracefulShutdown": { - "description": "If set to true, Graceful Shutdown is skipped.", - "location": "query", - "type": "boolean" - }, "project": { "description": "Project ID for this request.", "location": "path", @@ -15289,7 +15961,10 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instances/{instance}/stop", + "path": "projects/{project}/zones/{zone}/instances/{instance}/setTags", + "request": { + "$ref": "Tags" + }, "response": { "$ref": "Operation" }, @@ -15298,25 +15973,20 @@ "https://www.googleapis.com/auth/compute" ] }, - "suspend": { + "simulateMaintenanceEvent": { "apiVersion": "2026-10-01-preview", - "description": "This method suspends a running instance, saving its state to persistent\nstorage, and allows you to resume the instance at a later time. Suspended\ninstances have no compute costs (cores or RAM), and incur only storage\ncharges for the saved VM memory and localSSD data. Any charged resources\nthe virtual machine was using, such as persistent disks and static IP\naddresses, will continue to be charged while the instance is suspended.\nFor more information, see\nSuspending and resuming an instance.", - "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/suspend", + "description": "Simulates a host maintenance event on a VM. For more information, see\nSimulate a host maintenance event.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", "httpMethod": "POST", - "id": "compute.instances.suspend", + "id": "compute.instances.simulateMaintenanceEvent", "parameterOrder": [ "project", "zone", "instance" ], "parameters": { - "discardLocalSsd": { - "description": "This property is required if the instance has any attached Local SSD disks.\nIf false, Local SSD data will be preserved when the instance is suspended.\nIf true, the contents of any attached Local SSD disks will be discarded.", - "location": "query", - "type": "boolean" - }, "instance": { - "description": "Name of the instance resource to suspend.", + "description": "Name of the instance scoping this request.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -15334,6 +16004,11 @@ "location": "query", "type": "string" }, + "withExtendedNotifications": { + "description": "Determines whether the customers receive notifications before migration.\nOnly applicable to SF vms.", + "location": "query", + "type": "boolean" + }, "zone": { "description": "The name of the zone for this request.", "location": "path", @@ -15342,7 +16017,7 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instances/{instance}/suspend", + "path": "projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", "response": { "$ref": "Operation" }, @@ -15351,18 +16026,25 @@ "https://www.googleapis.com/auth/compute" ] }, - "testIamPermissions": { + "start": { "apiVersion": "2026-10-01-preview", - "description": "Returns permissions that a caller has on the specified resource.", - "flatPath": "projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "description": "Starts an instance that was stopped using theinstances().stop\nmethod. For more information, seeRestart an\ninstance.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/start", "httpMethod": "POST", - "id": "compute.instances.testIamPermissions", + "id": "compute.instances.start", "parameterOrder": [ "project", "zone", - "resource" + "instance" ], "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -15370,13 +16052,59 @@ "required": true, "type": "string" }, - "resource": { - "description": "Name or id of the resource for this request.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/start", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "startWithEncryptionKey": { + "apiVersion": "2026-10-01-preview", + "description": "Starts an instance that was stopped using theinstances().stop\nmethod. For more information, seeRestart an\ninstance.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "httpMethod": "POST", + "id": "compute.instances.startWithEncryptionKey", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, "zone": { "description": "The name of the zone for this request.", "location": "path", @@ -15385,48 +16113,100 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "path": "projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", "request": { - "$ref": "TestPermissionsRequest" + "$ref": "InstancesStartWithEncryptionKeyRequest" }, "response": { - "$ref": "TestPermissionsResponse" + "$ref": "Operation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" + "https://www.googleapis.com/auth/compute" ] }, - "troubleshoot": { + "stop": { "apiVersion": "2026-10-01-preview", - "description": "Initiates diagnostic troubleshooting on the specified instance.\nThis operation cannot be cancelled.", - "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/troubleshoot", + "description": "Stops a running instance, shutting it down cleanly, and allows\nyou to restart the instance at a later time. Stopped instances do not incur\nVM usage charges while they are stopped. However, resources that the VM is\nusing, such as persistent disks and static IP addresses, will continue to\nbe charged until they are deleted. For more information, seeStopping\nan instance.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/stop", "httpMethod": "POST", - "id": "compute.instances.troubleshoot", + "id": "compute.instances.stop", "parameterOrder": [ "project", "zone", "instance" ], "parameters": { + "discardLocalSsd": { + "description": "This property is required if the instance has any attached Local SSD disks.\nIf false, Local SSD data will be preserved when the instance is suspended.\nIf true, the contents of any attached Local SSD disks will be discarded.", + "location": "query", + "type": "boolean" + }, "instance": { - "description": "Name of the instance scoping this request.", + "description": "Name of the instance resource to stop.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "params.endTime": { - "description": "Input only. Timestamp representing the end of the troubleshooting window\nin RFC3339\ntext format. If omitted, defaults to 'now'.", + "noGracefulShutdown": { + "description": "If set to true, Graceful Shutdown is skipped.", "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, "type": "string" }, - "params.startTime": { - "description": "Input only. Timestamp representing the beginning of the troubleshooting window\nin RFC3339\ntext format. If omitted, defaults to the last 12 hours.", + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", "location": "query", "type": "string" }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/stop", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "suspend": { + "apiVersion": "2026-10-01-preview", + "description": "This method suspends a running instance, saving its state to persistent\nstorage, and allows you to resume the instance at a later time. Suspended\ninstances have no compute costs (cores or RAM), and incur only storage\ncharges for the saved VM memory and localSSD data. Any charged resources\nthe virtual machine was using, such as persistent disks and static IP\naddresses, will continue to be charged while the instance is suspended.\nFor more information, see\nSuspending and resuming an instance.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/suspend", + "httpMethod": "POST", + "id": "compute.instances.suspend", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "discardLocalSsd": { + "description": "This property is required if the instance has any attached Local SSD disks.\nIf false, Local SSD data will be preserved when the instance is suspended.\nIf true, the contents of any attached Local SSD disks will be discarded.", + "location": "query", + "type": "boolean" + }, + "instance": { + "description": "Name of the instance resource to suspend.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, "project": { "description": "Project ID for this request.", "location": "path", @@ -15447,7 +16227,7 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/instances/{instance}/troubleshoot", + "path": "projects/{project}/zones/{zone}/instances/{instance}/suspend", "response": { "$ref": "Operation" }, @@ -15456,6 +16236,53 @@ "https://www.googleapis.com/auth/compute" ] }, + "testIamPermissions": { + "apiVersion": "2026-10-01-preview", + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.instances.testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "update": { "apiVersion": "2026-10-01-preview", "description": "Updates an instance only if the necessary resources are available. This\nmethod can update only a specific set of instance properties. See\nUpdating a running instance for a list of updatable instance\nproperties.", @@ -15486,13 +16313,15 @@ "INVALID", "NO_EFFECT", "REFRESH", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "", "No changes can be made to the instance.", "The instance will not restart.", - "The instance will restart, potentially on a different host." + "The instance will restart, potentially on a different host.", + "The instance will restart on the same host. Data on all local SSDs\nwill be preserved." ], "location": "query", "type": "string" @@ -15503,13 +16332,15 @@ "INVALID", "NO_EFFECT", "REFRESH", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "", "No changes can be made to the instance.", "The instance will not restart.", - "The instance will restart, potentially on a different host." + "The instance will restart, potentially on a different host.", + "The instance will restart on the same host. Data on all local SSDs\nwill be preserved." ], "location": "query", "type": "string" @@ -22109,6 +22940,49 @@ "https://www.googleapis.com/auth/compute" ] }, + "updateNetworkProfile": { + "apiVersion": "2026-10-01-preview", + "description": "Updates the network profile of the specified network.\nCurrently only the following operations are supported:\n - Removing a Regionally Bound Network Profile", + "flatPath": "projects/{project}/global/networks/{network}/updateNetworkProfile", + "httpMethod": "POST", + "id": "compute.networks.updateNetworkProfile", + "parameterOrder": [ + "project", + "network" + ], + "parameters": { + "network": { + "description": "Name of the network resource to update the network profile for.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/networks/{network}/updateNetworkProfile", + "request": { + "$ref": "NetworksUpdateNetworkProfileRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "updatePeering": { "apiVersion": "2026-10-01-preview", "description": "Updates the specified network peering with the data included in the\nrequest. You can only modify the NetworkPeering.export_custom_routes field\nand the NetworkPeering.import_custom_routes field.", @@ -23510,6 +24384,364 @@ } } }, + "organizationGlobalVmExtensionPolicies": { + "methods": { + "aggregatedList": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves the list of all organization level VM Extension Policy resources\navailable to the specified organization.\n\nTo prevent failure, it's recommended that you set the\n`returnPartialSuccess` parameter to `true`.", + "flatPath": "organizations/{organizationsId}/aggregated/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.organizationGlobalVmExtensionPolicies.aggregatedList", + "parameterOrder": [ + "organization" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region,\nglobal) should be included in the response. For new resource types added\nafter this field, the flag has no effect as new resource types will always\ninclude every visible scope for each scope type in response. For resource\ntypes which predate this field, if this flag is omitted or false, only\nscopes of the scope types where the resource type is expected to be found\nwill be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "serviceProjectNumber": { + "description": "The Shared VPC service project id or service project number for which\naggregated list request is invoked for subnetworks list-usable api.", + "format": "int64", + "location": "query", + "type": "string" + } + }, + "path": "{+organization}/aggregated/vmExtensionPolicies", + "response": { + "$ref": "OrganizationVmExtensionPolicyAggregatedListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "apiVersion": "2026-10-01-preview", + "description": "Purge scoped resources (zonal policies) from an organization level global\nVM extension policy, and then delete the global VM extension policy. Purge\nof the scoped resources is a pre-condition of the global VM extension\npolicy deletion. The deletion of the global VM extension policy happens\nafter the purge rollout is done, so it's not a part of the LRO. It's an\nautomatic process that triggers in the backend.", + "flatPath": "organizations/{organizationsId}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete", + "httpMethod": "POST", + "id": "compute.organizationGlobalVmExtensionPolicies.delete", + "parameterOrder": [ + "organization", + "globalVmExtensionPolicy" + ], + "parameters": { + "globalVmExtensionPolicy": { + "description": "Name of the global VM extension policy to purge scoped resources for.", + "location": "path", + "required": true, + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{+organization}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete", + "request": { + "$ref": "GlobalVmExtensionPolicyRolloutOperationRolloutInput" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "apiVersion": "2026-10-01-preview", + "description": "Gets details of an organization level GlobalVmExtensionPolicy.", + "flatPath": "organizations/{organizationsId}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "httpMethod": "GET", + "id": "compute.organizationGlobalVmExtensionPolicies.get", + "parameterOrder": [ + "organization", + "globalVmExtensionPolicy" + ], + "parameters": { + "globalVmExtensionPolicy": { + "description": "Name of the GlobalVmExtensionPolicy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "response": { + "$ref": "GlobalVmExtensionPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getVmExtension": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves details of a specific VM extension.", + "flatPath": "organizations/{organizationsId}/global/vmExtensions/{extensionName}", + "httpMethod": "GET", + "id": "compute.organizationGlobalVmExtensionPolicies.getVmExtension", + "parameterOrder": [ + "organization", + "extensionName" + ], + "parameters": { + "extensionName": { + "description": "Required. Name of the VM extension for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/vmExtensions/{extensionName}", + "response": { + "$ref": "GlobalVmExtension" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "apiVersion": "2026-10-01-preview", + "description": "Creates a new organization level GlobalVmExtensionPolicy.", + "flatPath": "organizations/{organizationsId}/global/vmExtensionPolicies", + "httpMethod": "POST", + "id": "compute.organizationGlobalVmExtensionPolicies.insert", + "parameterOrder": [ + "organization" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{+organization}/global/vmExtensionPolicies", + "request": { + "$ref": "GlobalVmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "apiVersion": "2026-10-01-preview", + "description": "Lists organization level GlobalVmExtensionPolicies.", + "flatPath": "organizations/{organizationsId}/global/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.organizationGlobalVmExtensionPolicies.list", + "parameterOrder": [ + "organization" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "{+organization}/global/vmExtensionPolicies", + "response": { + "$ref": "GlobalVmExtensionPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listVmExtensions": { + "apiVersion": "2026-10-01-preview", + "description": "Lists all VM extensions within an organization.\nThis is a read-only API.", + "flatPath": "organizations/{organizationsId}/global/vmExtensions", + "httpMethod": "GET", + "id": "compute.organizationGlobalVmExtensionPolicies.listVmExtensions", + "parameterOrder": [ + "organization" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + } + }, + "path": "{+organization}/global/vmExtensions", + "response": { + "$ref": "GlobalListVmExtensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "apiVersion": "2026-10-01-preview", + "description": "Updates an organization level GlobalVmExtensionPolicy.", + "flatPath": "organizations/{organizationsId}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "httpMethod": "PATCH", + "id": "compute.organizationGlobalVmExtensionPolicies.update", + "parameterOrder": [ + "organization", + "globalVmExtensionPolicy" + ], + "parameters": { + "globalVmExtensionPolicy": { + "description": "Name of the global VM extension policy to update.", + "location": "path", + "required": true, + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{+organization}/global/vmExtensionPolicies/{globalVmExtensionPolicy}", + "request": { + "$ref": "GlobalVmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "organizationSecurityPolicies": { "methods": { "addAssociation": { @@ -24086,6 +25318,356 @@ } } }, + "organizationZoneVmExtensionPolicies": { + "methods": { + "delete": { + "apiVersion": "2026-10-01-preview", + "description": "Deletes a specified zone VM extension policy within an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "DELETE", + "id": "compute.organizationZoneVmExtensionPolicies.delete", + "parameterOrder": [ + "organization", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves details of a specific zone VM extension policy within an\norganization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "GET", + "id": "compute.organizationZoneVmExtensionPolicies.get", + "parameterOrder": [ + "organization", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the VM extension policy resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "VmExtensionPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getVmExtension": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves details of a specific VM extension within an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensions/{extensionName}", + "httpMethod": "GET", + "id": "compute.organizationZoneVmExtensionPolicies.getVmExtension", + "parameterOrder": [ + "organization", + "zone", + "extensionName" + ], + "parameters": { + "extensionName": { + "description": "Required. Name of the VM extension for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensions/{extensionName}", + "response": { + "$ref": "VmExtension" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "apiVersion": "2026-10-01-preview", + "description": "Creates a new zone-level VM extension policy within an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "POST", + "id": "compute.organizationZoneVmExtensionPolicies.insert", + "parameterOrder": [ + "organization", + "zone" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "apiVersion": "2026-10-01-preview", + "description": "Lists all VM extension policies within a specific zone for an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.organizationZoneVmExtensionPolicies.list", + "parameterOrder": [ + "organization", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies", + "response": { + "$ref": "VmExtensionPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listVmExtensions": { + "apiVersion": "2026-10-01-preview", + "description": "Lists all VM extensions within a specific zone for an organization.\nThis is a read-only API.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensions", + "httpMethod": "GET", + "id": "compute.organizationZoneVmExtensionPolicies.listVmExtensions", + "parameterOrder": [ + "organization", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensions", + "response": { + "$ref": "ListVmExtensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "apiVersion": "2026-10-01-preview", + "description": "Modifies an existing zone VM extension policy within an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "PATCH", + "id": "compute.organizationZoneVmExtensionPolicies.update", + "parameterOrder": [ + "organization", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "packetMirrorings": { "methods": { "aggregatedList": { @@ -35951,6 +37533,42 @@ "https://www.googleapis.com/auth/compute" ] }, + "fetchEncryptionKey": { + "apiVersion": "2026-10-01-preview", + "description": "Returns the public encryption key used to encrypt the TLS private key\nbefore upload.", + "flatPath": "projects/{project}/regions/{region}/sslCertificates/encryptionKey", + "httpMethod": "GET", + "id": "compute.regionSslCertificates.fetchEncryptionKey", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/sslCertificates/encryptionKey", + "response": { + "$ref": "SslCertificatesFetchEncryptionKeyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "get": { "apiVersion": "2026-10-01-preview", "description": "Returns the specified SslCertificate resource in the specified region. Get\na list of available SSL certificates by making a list()\nrequest.", @@ -43383,6 +45001,34 @@ "https://www.googleapis.com/auth/compute" ] }, + "fetchEncryptionKey": { + "apiVersion": "2026-10-01-preview", + "description": "Returns the public encryption key used to encrypt the TLS private key\nbefore upload.", + "flatPath": "projects/{project}/global/sslCertificates/encryptionKey", + "httpMethod": "GET", + "id": "compute.sslCertificates.fetchEncryptionKey", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/sslCertificates/encryptionKey", + "response": { + "$ref": "SslCertificatesFetchEncryptionKeyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "get": { "apiVersion": "2026-10-01-preview", "description": "Returns the specified SslCertificate resource.", @@ -49618,87 +51264,337 @@ "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" - } - }, - "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", - "response": { - "$ref": "WireGroupList" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] - }, - "patch": { - "apiVersion": "2026-10-01-preview", - "description": "Updates the specified wire group resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and usesJSON merge\npatch format and processing rules.", - "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", - "httpMethod": "PATCH", - "id": "compute.wireGroups.patch", - "parameterOrder": [ - "project", - "crossSiteNetwork", - "wireGroup" - ], - "parameters": { - "crossSiteNetwork": { - "location": "path", - "required": true, - "type": "string" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups", + "response": { + "$ref": "WireGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "apiVersion": "2026-10-01-preview", + "description": "Updates the specified wire group resource with the data included in the\nrequest. This method supportsPATCH\nsemantics and usesJSON merge\npatch format and processing rules.", + "flatPath": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "httpMethod": "PATCH", + "id": "compute.wireGroups.patch", + "parameterOrder": [ + "project", + "crossSiteNetwork", + "wireGroup" + ], + "parameters": { + "crossSiteNetwork": { + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "update_mask indicates fields to be updated as part of this request.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "[Input Only] Validate the new configuration, but don't update it.", + "location": "query", + "type": "boolean" + }, + "wireGroup": { + "description": "Name of the WireGroups resource to patch.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", + "request": { + "$ref": "WireGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "zoneFolderOperations": { + "methods": { + "get": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves the specified Operations resource.", + "flatPath": "folders/{foldersId}/zones/{zone}/operations/{operation}", + "httpMethod": "GET", + "id": "compute.zoneFolderOperations.get", + "parameterOrder": [ + "folder", + "zone", + "operation" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "operation": { + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves a list of Operation resources contained within the specified\nfolder.", + "flatPath": "folders/{foldersId}/zones/{zone}/operations", + "httpMethod": "GET", + "id": "compute.zoneFolderOperations.list", + "parameterOrder": [ + "folder", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "zoneOperations": { + "methods": { + "delete": { + "apiVersion": "2026-10-01-preview", + "description": "Deletes the specified zone-specific Operations resource.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "httpMethod": "DELETE", + "id": "compute.zoneOperations.delete", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to delete, or its unique numeric\nidentifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations/{operation}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves the specified zone-specific Operations resource.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "httpMethod": "GET", + "id": "compute.zoneOperations.get", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "parameters": { + "operation": { + "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves a list of Operation resources contained within\nthe specified zone.", + "flatPath": "projects/{project}/zones/{zone}/operations", + "httpMethod": "GET", + "id": "compute.zoneOperations.list", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "requestId": { - "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).\nend_interface: MixerMutationRequestBuilder", - "location": "query", - "type": "string" - }, - "updateMask": { - "description": "update_mask indicates fields to be updated as part of this request.", - "format": "google-fieldmask", - "location": "query", - "type": "string" - }, - "validateOnly": { - "description": "[Input Only] Validate the new configuration, but don't update it.", - "location": "query", - "type": "boolean" - }, - "wireGroup": { - "description": "Name of the WireGroups resource to patch.", + "zone": { + "description": "Name of the zone for request.", "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" } }, - "path": "projects/{project}/global/crossSiteNetworks/{crossSiteNetwork}/wireGroups/{wireGroup}", - "request": { - "$ref": "WireGroup" - }, + "path": "projects/{project}/zones/{zone}/operations", "response": { - "$ref": "Operation" + "$ref": "OperationList" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - } - } - }, - "zoneOperations": { - "methods": { - "delete": { + }, + "wait": { "apiVersion": "2026-10-01-preview", - "description": "Deletes the specified zone-specific Operations resource.", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", - "httpMethod": "DELETE", - "id": "compute.zoneOperations.delete", + "description": "Waits for the specified Operation resource to return as `DONE`\nor for the request to approach the 2 minute deadline, and retrieves the\nspecified Operation resource. This method waits for no more than the\n2 minutes and then returns the current state of the\noperation, which might be `DONE` or still in progress.\n\nThis method is called on a best-effort basis. Specifically:\n \n \n - In uncommon cases, when the server is overloaded, the request might\n return before the default deadline is reached, or might return after zero\n seconds.\n - If the default deadline is reached, there is no guarantee that the\n operation is actually done when the method returns. Be prepared to retry\n if the operation is not `DONE`.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}/wait", + "httpMethod": "POST", + "id": "compute.zoneOperations.wait", "parameterOrder": [ "project", "zone", @@ -49706,7 +51602,7 @@ ], "parameters": { "operation": { - "description": "Name of the Operations resource to delete, or its unique numeric\nidentifier.", + "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, @@ -49727,35 +51623,43 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations/{operation}", + "path": "projects/{project}/zones/{zone}/operations/{operation}/wait", + "response": { + "$ref": "Operation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ] - }, + } + } + }, + "zoneOrganizationOperations": { + "methods": { "get": { "apiVersion": "2026-10-01-preview", - "description": "Retrieves the specified zone-specific Operations resource.", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "description": "Retrieves the specified Operations resource.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/operations/{operation}", "httpMethod": "GET", - "id": "compute.zoneOperations.get", + "id": "compute.zoneOrganizationOperations.get", "parameterOrder": [ - "project", + "organization", "zone", "operation" ], "parameters": { "operation": { - "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", + "description": "Name of the Operations resource to return. Parent is derived from this\nfield.", "location": "path", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", "required": true, "type": "string" }, - "project": { - "description": "Project ID for this request.", + "organization": { + "description": "Organization ID for this request.", "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "organizations/[0-9]{0,20}", "required": true, "type": "string" }, @@ -49767,7 +51671,7 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations/{operation}", + "path": "{+organization}/zones/{zone}/operations/{operation}", "response": { "$ref": "Operation" }, @@ -49779,12 +51683,12 @@ }, "list": { "apiVersion": "2026-10-01-preview", - "description": "Retrieves a list of Operation resources contained within\nthe specified zone.", - "flatPath": "projects/{project}/zones/{zone}/operations", + "description": "Retrieves a list of Operation resources contained within the specified\norganization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/operations", "httpMethod": "GET", - "id": "compute.zoneOperations.list", + "id": "compute.zoneOrganizationOperations.list", "parameterOrder": [ - "project", + "organization", "zone" ], "parameters": { @@ -49806,18 +51710,18 @@ "location": "query", "type": "string" }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + }, "pageToken": { "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", "location": "query", "type": "string" }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, "zone": { "description": "Name of the zone for request.", "location": "path", @@ -49826,7 +51730,7 @@ "type": "string" } }, - "path": "projects/{project}/zones/{zone}/operations", + "path": "{+organization}/zones/{zone}/operations", "response": { "$ref": "OperationList" }, @@ -49835,50 +51739,6 @@ "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] - }, - "wait": { - "apiVersion": "2026-10-01-preview", - "description": "Waits for the specified Operation resource to return as `DONE`\nor for the request to approach the 2 minute deadline, and retrieves the\nspecified Operation resource. This method waits for no more than the\n2 minutes and then returns the current state of the\noperation, which might be `DONE` or still in progress.\n\nThis method is called on a best-effort basis. Specifically:\n \n \n - In uncommon cases, when the server is overloaded, the request might\n return before the default deadline is reached, or might return after zero\n seconds.\n - If the default deadline is reached, there is no guarantee that the\n operation is actually done when the method returns. Be prepared to retry\n if the operation is not `DONE`.", - "flatPath": "projects/{project}/zones/{zone}/operations/{operation}/wait", - "httpMethod": "POST", - "id": "compute.zoneOperations.wait", - "parameterOrder": [ - "project", - "zone", - "operation" - ], - "parameters": { - "operation": { - "description": "Name of the Operations resource to return, or its unique numeric\nidentifier.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", - "required": true, - "type": "string" - }, - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "zone": { - "description": "Name of the zone for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/zones/{zone}/operations/{operation}/wait", - "response": { - "$ref": "Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute", - "https://www.googleapis.com/auth/compute.readonly" - ] } } }, @@ -49975,6 +51835,50 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getVmExtension": { + "apiVersion": "2026-10-01-preview", + "description": "Retrieves details of a specific VM extension within a project.", + "flatPath": "projects/{project}/zones/{zone}/vmExtensions/{extensionName}", + "httpMethod": "GET", + "id": "compute.zoneVmExtensionPolicies.getVmExtension", + "parameterOrder": [ + "project", + "zone", + "extensionName" + ], + "parameters": { + "extensionName": { + "description": "Required. Name of the VM extension for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/vmExtensions/{extensionName}", + "response": { + "$ref": "VmExtension" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "insert": { "apiVersion": "2026-10-01-preview", "description": "Creates a new zone-level VM extension policy within a project.", @@ -50077,6 +51981,65 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "listVmExtensions": { + "apiVersion": "2026-10-01-preview", + "description": "Lists all VM extensions within a specific zone for a project.\nThis is a read-only API.", + "flatPath": "projects/{project}/zones/{zone}/vmExtensions", + "httpMethod": "GET", + "id": "compute.zoneVmExtensionPolicies.listVmExtensions", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Required. Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/vmExtensions", + "response": { + "$ref": "ListVmExtensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "update": { "apiVersion": "2026-10-01-preview", "description": "Modifies an existing zone VM extension policy within a project.", @@ -50221,7 +52184,7 @@ } } }, - "revision": "20261007", + "revision": "20261016", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -52205,12 +54168,14 @@ "ACTIVE", "CREATING", "DELETING", + "FROZEN", "STATE_UNSPECIFIED" ], "enumDescriptions": [ "The endpoint is active and ready to process traffic.", "The endpoint is being created.", "The endpoint is being deleted.", + "The endpoint is frozen and deprogrammed from the dataplane.", "Unspecified state." ], "readOnly": true, @@ -55386,12 +57351,14 @@ "id": "BackendServiceHAPolicy", "properties": { "fastIPMove": { - "description": "Specifies whether fast IP move is enabled, and if so, the mechanism to\nachieve it.\n\nSupported values are:\n \n - DISABLED: Fast IP Move is disabled. You can only use the\n haPolicy.leader API to update the leader.\n - >GARP_RA: Provides a method to very quickly define a new network\n endpoint as the leader. This method is faster than updating the leader\n using the haPolicy.leader API. Fast IP move works as follows: The VM\n hosting the network endpoint that should become the new leader sends\n either a Gratuitous ARP (GARP) packet (IPv4) or an ICMPv6 Router\n Advertisement(RA) packet (IPv6). Google Cloud immediately but\n temporarily associates the forwarding rule IP address with that VM, and\n both new and in-flight packets are quickly delivered to that VM.\n\n\n\nNote the important properties of the Fast IP Move functionality:\n \n - The GARP/RA-initiated re-routing stays active for approximately 20\n minutes. After triggering fast failover, you must also\n appropriately set the haPolicy.leader.\n - The new leader instance should continue to send GARP/RA packets\n periodically every 10 seconds until at least 10 minutes after updating\n the haPolicy.leader (but stop immediately if it is no longer the leader).\n - After triggering a fast failover, we recommend that you wait at least\n 3 seconds before sending another GARP/RA packet from a different VM\n instance to avoid race conditions.\n - Don't send GARP/RA packets from different VM\n instances at the same time. If multiple instances continue to send\n GARP/RA packets, traffic might be routed to different destinations in an\n alternating order. This condition ceases when a single instance\n issues a GARP/RA packet.\n - The GARP/RA request always takes priority over the leader API.\n Using the haPolicy.leader API to change the leader to a different\n instance will have no effect until the GARP/RA request becomes\n inactive.\n - The GARP/RA packets should follow the GARP/RA\n Packet Specifications..\n - When multiple forwarding rules refer to a regional backend service,\n you need only send a GARP or RA packet for a single forwarding rule\n virtual IP. The virtual IPs for all forwarding rules targeting the same\n backend service will also be moved to the sender of the GARP or RA\n packet. \n\n\n\nThe following are the Fast IP Move limitations (that is, when fastIPMove\nis not DISABLED):\n \n - Multiple forwarding rules cannot use the same IP address if one of\n them refers to a regional backend service with fastIPMove.\n - The regional backend service must set the network field, and all\n NEGs must belong to that network. However, individual\n NEGs can belong to different subnetworks of that network. \n - The maximum number of network endpoints across all backends of a\n backend service with fastIPMove is 32.\n - The maximum number of backend services with fastIPMove that can have\n the same network endpoint attached to one of its backends is 64.\n - The maximum number of backend services with fastIPMove in a VPC in a\n region is 64.\n - The network endpoints that are attached to a backend of a backend\n service with fastIPMove cannot resolve to Gen3+ machines for IPv6.\n - Traffic directed to the leader by a static route next hop will not be\n redirected to a new leader by fast failover. Such traffic will only be\n redirected once an haPolicy.leader update has taken effect. Only traffic\n to the forwarding rule's virtual IP will be redirected to a new leader by\n fast failover.\n\n\nhaPolicy.fastIPMove can be set only at backend service creation time.\nOnce set, it cannot be updated.\n\nBy default, fastIpMove is set to DISABLED.", + "description": "Specifies whether fast IP move is enabled, and if so, the mechanism to\nachieve it.\n\nSupported values are:\n \n - DISABLED: Fast IP Move is disabled. You can only use the\n haPolicy.leader API to update the leader.\n - >GARP_RA: Provides a method to very quickly define a new network\n endpoint as the leader. This method is faster than updating the leader\n using the haPolicy.leader API. Fast IP move works as follows: The VM\n hosting the network endpoint that should become the new leader sends\n either a Gratuitous ARP (GARP) packet (IPv4) or an ICMPv6 Router\n Advertisement(RA) packet (IPv6). Google Cloud immediately but\n temporarily associates the forwarding rule IP address with that VM, and\n both new and in-flight packets are quickly delivered to that VM.\n - HA_CONTROLLER: The Backend Service is managed by a High Availability\n Controller. Failover and leader election are exclusively managed by the\n HA Controller service.\n\n\n\nNote the important properties of the Fast IP Move functionality:\n \n - The GARP/RA-initiated re-routing stays active for approximately 20\n minutes. After triggering fast failover, you must also\n appropriately set the haPolicy.leader.\n - The new leader instance should continue to send GARP/RA packets\n periodically every 10 seconds until at least 10 minutes after updating\n the haPolicy.leader (but stop immediately if it is no longer the leader).\n - After triggering a fast failover, we recommend that you wait at least\n 3 seconds before sending another GARP/RA packet from a different VM\n instance to avoid race conditions.\n - Don't send GARP/RA packets from different VM\n instances at the same time. If multiple instances continue to send\n GARP/RA packets, traffic might be routed to different destinations in an\n alternating order. This condition ceases when a single instance\n issues a GARP/RA packet.\n - The GARP/RA request always takes priority over the leader API.\n Using the haPolicy.leader API to change the leader to a different\n instance will have no effect until the GARP/RA request becomes\n inactive.\n - The GARP/RA packets should follow the GARP/RA\n Packet Specifications..\n - When multiple forwarding rules refer to a regional backend service,\n you need only send a GARP or RA packet for a single forwarding rule\n virtual IP. The virtual IPs for all forwarding rules targeting the same\n backend service will also be moved to the sender of the GARP or RA\n packet. \n\n\n\nThe following are the Fast IP Move limitations (that is, when fastIPMove\nis not DISABLED):\n \n - Multiple forwarding rules cannot use the same IP address if one of\n them refers to a regional backend service with fastIPMove.\n - The regional backend service must set the network field, and all\n NEGs must belong to that network. However, individual\n NEGs can belong to different subnetworks of that network. \n - The maximum number of network endpoints across all backends of a\n backend service with fastIPMove is 32.\n - The maximum number of backend services with fastIPMove that can have\n the same network endpoint attached to one of its backends is 64.\n - The maximum number of backend services with fastIPMove in a VPC in a\n region is 64.\n - The network endpoints that are attached to a backend of a backend\n service with fastIPMove cannot resolve to Gen3+ machines for IPv6.\n - Traffic directed to the leader by a static route next hop will not be\n redirected to a new leader by fast failover. Such traffic will only be\n redirected once an haPolicy.leader update has taken effect. Only traffic\n to the forwarding rule's virtual IP will be redirected to a new leader by\n fast failover.\n\n\nhaPolicy.fastIPMove can be set only at backend service creation time.\nOnce set, it cannot be updated.\n\nBy default, fastIpMove is set to DISABLED.", "enum": [ "DISABLED", - "GARP_RA" + "GARP_RA", + "HA_CONTROLLER" ], "enumDescriptions": [ + "", "", "" ], @@ -56563,7 +58530,7 @@ }, "instanceFlexibilityPolicy": { "$ref": "InstanceFlexibilityPolicy", - "description": "A flexible specification of machine type of instances to create." + "description": "A specification of alternative machine types to use when creating\ninstances. A single bulkInsert request can create instances with multiple\ndifferent machine types based on capacity and quota availability. This\nfield is supported only for regional bulkInsert requests. For more\ninformation, see About\ninstance flexibility for VMs created in bulk." }, "instanceProperties": { "$ref": "InstanceProperties", @@ -56710,7 +58677,7 @@ "type": "array" }, "host": { - "description": "If set, this invalidation rule will only apply to requests with a Host\nheader matching host.", + "description": "If set, this invalidation rule will only apply to requests with a Host\nheader matching host. This field also accepts wildcards (*) to replace the\nleftmost (or first) label of a hostname. For example, *.example.com will\nmatch www.example.com, but not sub1.dev.example.com.", "type": "string" }, "path": { @@ -56952,6 +58919,10 @@ "$ref": "CapacityAdviceRequestInstanceProperties", "description": "Instance properties for this request." }, + "sessionId": { + "description": "Optional. Input only. Client-provided UUID correlating multiple capacity advice requests\nbelonging to a single logical client-side fanout session.", + "type": "string" + }, "size": { "description": "The number of VM instances to request.", "format": "int32", @@ -57602,6 +59573,8 @@ "MEMORY_OPTIMIZED", "MEMORY_OPTIMIZED_M3", "MEMORY_OPTIMIZED_M4", + "MEMORY_OPTIMIZED_M4N", + "MEMORY_OPTIMIZED_M4N_6TB", "MEMORY_OPTIMIZED_M4_6TB", "MEMORY_OPTIMIZED_X4_1440_24T", "MEMORY_OPTIMIZED_X4_16TB", @@ -57659,6 +59632,8 @@ "", "", "", + "CUD bucket for M4N machines with less than 6TB of memory.", + "CUD bucket for M4N machines with 6TB of memory.", "", "CUD bucket for X4 machine with 1440 vCPUs and 24TB of memory.", "", @@ -62554,6 +64529,174 @@ }, "type": "object" }, + "FolderVmExtensionPolicyAggregatedListResponse": { + "id": "FolderVmExtensionPolicyAggregatedListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "VmExtensionPoliciesScopedList", + "description": "Name of the scope containing this set of VmExtensionPolicies." + }, + "description": "A list of VmExtensionPoliciesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#FolderVmExtensionPolicyAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#FolderVmExtensionPolicyAggregatedList for lists of\nVmExtensionPolicies.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }]", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, "ForwardingRule": { "description": "Represents a Forwarding Rule resource.\n\nForwarding rule resources in Google Cloud can be either regional or global in\nscope:\n\n* [Global](https://cloud.google.com/compute/docs/reference/rest/v1/globalForwardingRules)\n* [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/forwardingRules)\n\nA forwarding rule and its corresponding IP address represent the frontend\nconfiguration of a Google Cloud load balancer.\nForwarding rules can also reference target instances and Cloud VPN Classic\ngateways (targetVpnGateway).\n\nFor more information, read\nForwarding rule concepts and\nUsing protocol forwarding.", "id": "ForwardingRule", @@ -64845,6 +66988,179 @@ }, "type": "object" }, + "GlobalListVmExtensionsResponse": { + "id": "GlobalListVmExtensionsResponse", + "properties": { + "etag": { + "description": "Output only. Fingerprint of this resource. A hash of the contents stored\nin this object. This field is used in optimistic locking. This field will\nbe ignored when inserting a VmExtensionPolicy. An up-to-date\nfingerprint must be provided in order to update the VmExtensionPolicy.\n\nTo see the latest value of the fingerprint, make a get() request to\nretrieve a VmExtensionPolicy.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "readOnly": true, + "type": "string" + }, + "items": { + "description": "Output only. A list of VM extensions.", + "items": { + "$ref": "GlobalVmExtension" + }, + "readOnly": true, + "type": "array" + }, + "kind": { + "default": "compute#globalVmExtensionList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "Output only. Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "Output only. Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }]", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "GlobalNetworkEndpointGroupsAttachEndpointsRequest": { "id": "GlobalNetworkEndpointGroupsAttachEndpointsRequest", "properties": { @@ -64933,6 +67249,49 @@ }, "type": "object" }, + "GlobalVmExtension": { + "id": "GlobalVmExtension", + "properties": { + "creationTimestamp": { + "description": "Output only. [Output Only] Creation timestamp inRFC3339\ntext format.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Output only. [Output Only] An optional textual description of the resource.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "format": "uint64", + "readOnly": true, + "type": "string" + }, + "kind": { + "default": "compute#globalVmExtension", + "description": "Output only. [Output Only] Type of the resource. Alwayscompute#globalVmExtension.", + "readOnly": true, + "type": "string" + }, + "name": { + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for the resource.", + "readOnly": true, + "type": "string" + }, + "versions": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GlobalVmExtensionPolicy": { "description": "Message describing GlobalVmExtensionPolicy object.", "id": "GlobalVmExtensionPolicy", @@ -71452,7 +73811,7 @@ "additionalProperties": { "$ref": "InstanceFlexibilityPolicyInstanceSelection" }, - "description": "Specification of alternative, flexible instance subsets.\nOne of them will be selected to create the instances\nbased on various criteria, like:\n- ranks,\n- location policy,\n- current capacity,\n- available reservations (you can specify affinity in\nInstanceProperties),\n- SWAN/GOOSE limitations.\nKey is an arbitrary, unique RFC1035 string that identifies the instance\nselection.", + "description": "Specifies named instance selections that define properties for instances\ncreated in bulk.\nKey is an arbitrary, unique RFC1035 string that identifies the instance\nselection.", "type": "object" } }, @@ -73114,6 +75473,7 @@ "enum": [ "ACTIVATING", "ACTIVE", + "ACTIVE_DEGRADED", "DEACTIVATING", "FAILED", "INCOMPLETE", @@ -73122,6 +75482,7 @@ "enumDescriptions": [ "The accelerator topology is being activated.", "The accelerator topology is active.", + "The accelerator topology is active but operating in degraded mode.", "The accelerator topology is being deactivated.", "The accelerator topology failed.", "The configuration is incomplete and the accelerator topology cannot\nbe activated due to insufficient number of running VMs.", @@ -81428,6 +83789,179 @@ }, "type": "object" }, + "ListVmExtensionsResponse": { + "id": "ListVmExtensionsResponse", + "properties": { + "etag": { + "description": "Output only. Fingerprint of this resource. A hash of the contents stored\nin this object. This field is used in optimistic locking. This field will\nbe ignored when inserting a VmExtensionPolicy. An up-to-date\nfingerprint must be provided in order to update the VmExtensionPolicy.\n\nTo see the latest value of the fingerprint, make a get() request to\nretrieve a VmExtensionPolicy.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "Output only. Unique identifier for the resource; defined by the server.", + "readOnly": true, + "type": "string" + }, + "items": { + "description": "Output only. A list of VM extensions.", + "items": { + "$ref": "VmExtension" + }, + "readOnly": true, + "type": "array" + }, + "kind": { + "default": "compute#vmExtensionList", + "description": "Output only. Type of resource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "Output only. This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "readOnly": true, + "type": "string" + }, + "selfLink": { + "description": "Output only. Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "Output only. Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }]", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "LocalDisk": { "id": "LocalDisk", "properties": { @@ -83589,6 +86123,7 @@ "NEEDS_ATTENTION", "PENDING", "REJECTED", + "RESERVED", "STATUS_UNSPECIFIED" ], "enumDescriptions": [ @@ -83597,6 +86132,7 @@ "The consumer needs to take further action before traffic can be served.", "The consumer neither allows nor prohibits traffic\nfrom the producer to reach its VPC.", "The consumer prohibits traffic from the producer to reach its VPC.", + "There is no traffic flowing in this state, only the address is\nreserved.", "" ], "type": "string" @@ -86956,6 +89492,20 @@ }, "type": "object" }, + "NetworksUpdateNetworkProfileRequest": { + "id": "NetworksUpdateNetworkProfileRequest", + "properties": { + "clearNetworkProfile": { + "description": "If true, clear the network profile from the network.", + "type": "boolean" + }, + "networkProfile": { + "description": "A full or partial URL of the new network profile to apply to this network.\nFor example, the following are valid URLs: \n \n - https://www.googleapis.com/compute/{api_version}/projects/{project_id}/global/networkProfiles/{network_profile_name}\n - projects/{project_id}/global/networkProfiles/{network_profile_name}", + "type": "string" + } + }, + "type": "object" + }, "NetworksUpdatePeeringRequest": { "id": "NetworksUpdatePeeringRequest", "properties": { @@ -89573,6 +92123,10 @@ "description": "[Output Only] A textual description of the operation, which is\nset when the operation is created.", "type": "string" }, + "details": { + "$ref": "OperationDetails", + "description": "[Output Only] Extended details about the operation's execution." + }, "endTime": { "description": "[Output Only] The time that this operation was completed. This value is inRFC3339\ntext format.", "type": "string" @@ -90035,37 +92589,192 @@ }, "type": "object" }, - "OperationList": { - "description": "Contains a list of Operation resources.", - "id": "OperationList", + "OperationDetails": { + "id": "OperationDetails", + "properties": { + "data": { + "additionalProperties": { + "format": "google.protobuf.Value", + "type": "any" + }, + "description": "Machine readable data from the message.", + "type": "object" + }, + "message": { + "description": "Human or AI readable details on execution of the operation.", + "type": "string" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + }, + "type": "array" + }, + "kind": { + "default": "compute#operationList", + "description": "Output only. [Output Only] Type of resource. Always `compute#operations` for Operations\nresource.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger than\n`maxResults`, use the `nextPageToken` as a value for\nthe query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the\nsame network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }]", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "OperationsScopedList": { + "id": "OperationsScopedList", "properties": { - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "type": "string" - }, - "items": { - "description": "[Output Only] A list of Operation resources.", + "operations": { + "description": "[Output Only] A list of operations contained in this scope.", "items": { "$ref": "Operation" }, "type": "array" }, - "kind": { - "default": "compute#operationList", - "description": "Output only. [Output Only] Type of resource. Always `compute#operations` for Operations\nresource.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger than\n`maxResults`, use the `nextPageToken` as a value for\nthe query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for this resource.", - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "[Output Only] Informational warning which replaces the list of operations\nwhen the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -90191,18 +92900,68 @@ }, "type": "object" }, - "OperationsScopedList": { - "id": "OperationsScopedList", + "OrganizationSecurityPoliciesListAssociationsResponse": { + "id": "OrganizationSecurityPoliciesListAssociationsResponse", "properties": { - "operations": { - "description": "[Output Only] A list of operations contained in this scope.", + "associations": { + "description": "A list of associations.", "items": { - "$ref": "Operation" + "$ref": "SecurityPolicyAssociation" + }, + "type": "array" + }, + "kind": { + "default": "compute#organizationSecurityPoliciesListAssociationsResponse", + "description": "Output only. [Output Only] Type of securityPolicy associations. Alwayscompute#organizationSecurityPoliciesListAssociations for lists\nof securityPolicy associations.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "OrganizationVmExtensionPolicyAggregatedListResponse": { + "id": "OrganizationVmExtensionPolicyAggregatedListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "VmExtensionPoliciesScopedList", + "description": "Name of the scope containing this set of VmExtensionPolicies." + }, + "description": "A list of VmExtensionPoliciesScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#OrganizationVmExtensionPolicyAggregatedList", + "description": "Output only. [Output Only] Type of resource. Alwayscompute#OrganizationVmExtensionPolicyAggregatedList for lists\nof VmExtensionPolicies.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of operations\nwhen the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -90328,25 +93087,6 @@ }, "type": "object" }, - "OrganizationSecurityPoliciesListAssociationsResponse": { - "id": "OrganizationSecurityPoliciesListAssociationsResponse", - "properties": { - "associations": { - "description": "A list of associations.", - "items": { - "$ref": "SecurityPolicyAssociation" - }, - "type": "array" - }, - "kind": { - "default": "compute#organizationSecurityPoliciesListAssociationsResponse", - "description": "Output only. [Output Only] Type of securityPolicy associations. Alwayscompute#organizationSecurityPoliciesListAssociations for lists\nof securityPolicy associations.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, "OutlierDetection": { "description": "Settings controlling the eviction of unhealthy hosts from the load balancing\npool for the backend service.", "id": "OutlierDetection", @@ -97295,6 +100035,10 @@ ], "type": "string" }, + "componentId": { + "description": "The identifier of the specific faulty sub-component (e.g., NVSwitch ID).\nOptional. If not specified, all switches in the sub-block are targeted\nfor triage.", + "type": "string" + }, "description": { "description": "The description of the fault experienced with the subBlock.", "type": "string" @@ -102629,7 +105373,7 @@ "type": "string" }, "skipGuestOsShutdown": { - "description": "Default is false and there will be 120 seconds between GCE ACPI G2 Soft\nOff and ACPI G3 Mechanical\nOff for Standard VMs and 30 seconds for Spot VMs.", + "description": "Defines whether GCE ACPI G2 Soft\nOff signal should be skipped during shutdown operation of VM.\n\nDefault is false, meaning there will be 120 seconds between GCE ACPI G2 Soft\nOff and ACPI G3 Mechanical\nOff for Standard VMs and 30 seconds for Spot VMs.", "type": "boolean" }, "terminationTime": { @@ -106253,6 +108997,17 @@ }, "type": "object" }, + "SslCertificatesFetchEncryptionKeyResponse": { + "description": "Response for `SslCertificatesService.FetchEncryptionKey` and\n`RegionSslCertificatesService.FetchEncryptionKey` methods.", + "id": "SslCertificatesFetchEncryptionKeyResponse", + "properties": { + "publicKeyset": { + "description": "The Tink public keyset serialized in JSON format.", + "type": "string" + } + }, + "type": "object" + }, "SslCertificatesScopedList": { "id": "SslCertificatesScopedList", "properties": { @@ -111167,6 +113922,10 @@ "description": "The URL of the network this target instance uses to forward traffic.\nIf not specified, the traffic will be forwarded to the network that\nthe default network interface belongs to.", "type": "string" }, + "params": { + "$ref": "TargetInstanceParams", + "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." + }, "securityPolicy": { "description": "[Output Only] The resource URL for the security policy associated with this\ntarget instance.", "type": "string" @@ -111505,6 +114264,20 @@ }, "type": "object" }, + "TargetInstanceParams": { + "description": "Additional target instance parameters.", + "id": "TargetInstanceParams", + "properties": { + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format are not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.\n* Inconsistent format is not supported. For instance:\n {\"tagKeys/333\" : \"tagValues/444\", \"123/env\" : \"prod\"} is invalid.", + "type": "object" + } + }, + "type": "object" + }, "TargetInstancesScopedList": { "id": "TargetInstancesScopedList", "properties": { @@ -111694,6 +114467,10 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "params": { + "$ref": "TargetPoolParams", + "description": "Input only. [Input Only] Additional params passed with the request, but not persisted\nas part of resource payload." + }, "region": { "description": "Output only. [Output Only] URL of the region where the target pool resides.", "readOnly": true, @@ -112076,6 +114853,20 @@ }, "type": "object" }, + "TargetPoolParams": { + "description": "Additional target pool parameters.", + "id": "TargetPoolParams", + "properties": { + "resourceManagerTags": { + "additionalProperties": { + "type": "string" + }, + "description": "Tag keys/values directly bound to this resource.\nTag keys and values have the same definition as resource\nmanager tags. The field is allowed for INSERT\nonly. The keys/values to set on the resource should be specified in\neither ID { : } or Namespaced format\n{ : }.\nFor example the following are valid inputs:\n* {\"tagKeys/333\" : \"tagValues/444\", \"tagKeys/123\" : \"tagValues/456\"}\n* {\"123/environment\" : \"production\", \"345/abc\" : \"xyz\"}\nNote:\n* Invalid combinations of ID & namespaced format are not supported. For\n instance: {\"123/environment\" : \"tagValues/444\"} is invalid.\n* Inconsistent format is not supported. For instance:\n {\"tagKeys/333\" : \"tagValues/444\", \"123/env\" : \"prod\"} is invalid.", + "type": "object" + } + }, + "type": "object" + }, "TargetPoolsAddHealthCheckRequest": { "id": "TargetPoolsAddHealthCheckRequest", "properties": { @@ -115154,6 +117945,24 @@ }, "type": "object" }, + "VmExtension": { + "description": "A VM extension that can be installed on a VM.", + "id": "VmExtension", + "properties": { + "name": { + "description": "The name of the vm extension.", + "type": "string" + }, + "versions": { + "description": "The latest 10 versions of the vm extension.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "VmExtensionPoliciesScopedList": { "id": "VmExtensionPoliciesScopedList", "properties": { @@ -116566,6 +119375,14 @@ "description": "IP address of the peer VPN gateway. Only IPv4 is supported. This field can\nbe set only for Classic VPN tunnels.", "type": "string" }, + "pqcPhase1": { + "$ref": "VpnTunnelPqc", + "description": "User specified list of PQC key exchange mechanisms (KEMs) to use for the\nphase 1 of the IKE protocol." + }, + "pqcPhase2": { + "$ref": "VpnTunnelPqc", + "description": "User specified list of PQC key exchange mechanisms (KEMs) to use for the\nphase 2 of the IKE protocol." + }, "region": { "description": "[Output Only] URL of the region where the VPN tunnel resides.\nYou must specify this field as part of the HTTP request URL. It is\nnot settable as a field in the request body.", "type": "string" @@ -116643,6 +119460,139 @@ }, "type": "object" }, + "VpnTunnelAdditionalKeyExchanges": { + "description": "User specified list of PQC key exchanges.", + "id": "VpnTunnelAdditionalKeyExchanges", + "properties": { + "ke1s": { + "items": { + "enum": [ + "KEY_ENCAPSULATION_MECHANISM_UNSPECIFIED", + "KE_NONE", + "ML_KEM_1024", + "ML_KEM_768" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "ke2s": { + "items": { + "enum": [ + "KEY_ENCAPSULATION_MECHANISM_UNSPECIFIED", + "KE_NONE", + "ML_KEM_1024", + "ML_KEM_768" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "ke3s": { + "items": { + "enum": [ + "KEY_ENCAPSULATION_MECHANISM_UNSPECIFIED", + "KE_NONE", + "ML_KEM_1024", + "ML_KEM_768" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "ke4s": { + "items": { + "enum": [ + "KEY_ENCAPSULATION_MECHANISM_UNSPECIFIED", + "KE_NONE", + "ML_KEM_1024", + "ML_KEM_768" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "ke5s": { + "items": { + "enum": [ + "KEY_ENCAPSULATION_MECHANISM_UNSPECIFIED", + "KE_NONE", + "ML_KEM_1024", + "ML_KEM_768" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "ke6s": { + "items": { + "enum": [ + "KEY_ENCAPSULATION_MECHANISM_UNSPECIFIED", + "KE_NONE", + "ML_KEM_1024", + "ML_KEM_768" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "ke7s": { + "items": { + "enum": [ + "KEY_ENCAPSULATION_MECHANISM_UNSPECIFIED", + "KE_NONE", + "ML_KEM_1024", + "ML_KEM_768" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "VpnTunnelAggregatedList": { "id": "VpnTunnelAggregatedList", "properties": { @@ -116812,10 +119762,12 @@ "id": "VpnTunnelCipherSuite", "properties": { "phase1": { - "$ref": "VpnTunnelPhase1Algorithms" + "$ref": "VpnTunnelPhase1Algorithms", + "description": "Cipher algorithms for IKE phase 1." }, "phase2": { - "$ref": "VpnTunnelPhase2Algorithms" + "$ref": "VpnTunnelPhase2Algorithms", + "description": "Cipher algorithms for IKE phase 2." } }, "type": "object" @@ -116994,24 +119946,28 @@ "id": "VpnTunnelPhase1Algorithms", "properties": { "dh": { + "description": "Diffie-Hellman groups for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "encryption": { + "description": "Encryption algorithms for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "integrity": { + "description": "Integrity algorithms for IKE phase 1.", "items": { "type": "string" }, "type": "array" }, "prf": { + "description": "Pseudo-random functions (PRF) for IKE phase 1.", "items": { "type": "string" }, @@ -117024,18 +119980,21 @@ "id": "VpnTunnelPhase2Algorithms", "properties": { "encryption": { + "description": "Encryption algorithms for IKE phase 2.", "items": { "type": "string" }, "type": "array" }, "integrity": { + "description": "Integrity algorithms for IKE phase 2.", "items": { "type": "string" }, "type": "array" }, "pfs": { + "description": "Perfect Forward Secrecy (PFS) groups for IKE phase 2.", "items": { "type": "string" }, @@ -117044,6 +120003,28 @@ }, "type": "object" }, + "VpnTunnelPqc": { + "id": "VpnTunnelPqc", + "properties": { + "keys": { + "$ref": "VpnTunnelAdditionalKeyExchanges" + }, + "mode": { + "enum": [ + "DISABLED", + "ENABLED", + "PQC_MODE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "VpnTunnelsScopedList": { "id": "VpnTunnelsScopedList", "properties": { @@ -117645,6 +120626,19 @@ }, "identityCertificateEnabled": { "type": "boolean" + }, + "identityType": { + "enum": [ + "AGENT_IDENTITY", + "IDENTITY_TYPE_UNSPECIFIED", + "SERVICE_ACCOUNT" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" } }, "type": "object" diff --git a/discovery/curationpartners-v1.json b/discovery/curationpartners-v1.json index ecfc6acbbc..093d3722b4 100644 --- a/discovery/curationpartners-v1.json +++ b/discovery/curationpartners-v1.json @@ -780,11 +780,43 @@ "scopes": [ "https://www.googleapis.com/auth/curation-partners" ] + }, + "search": { + "description": "Searches for media planner accounts matching the given DSP seat ID.", + "flatPath": "v1/mediaPlanners:search", + "httpMethod": "GET", + "id": "curationpartners.mediaPlanners.search", + "parameterOrder": [], + "parameters": { + "dspSeatId": { + "description": "Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in SearchMediaPlannersResponse.nextPageToken.", + "location": "query", + "type": "string" + } + }, + "path": "v1/mediaPlanners:search", + "response": { + "$ref": "SearchMediaPlannersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/curation-partners" + ] } } } }, - "revision": "20260901", + "revision": "20261020", "rootUrl": "https://curationpartners.googleapis.com/", "schemas": { "AccessControlSettings": { @@ -2225,6 +2257,24 @@ }, "type": "object" }, + "SearchMediaPlannersResponse": { + "description": "A response containing media planner account information from a search.", + "id": "SearchMediaPlannersResponse", + "properties": { + "mediaPlanners": { + "description": "List of media planners matching the search criteria.", + "items": { + "$ref": "MediaPlanner" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token which can be passed to a subsequent call to the SearchMediaPlanners method to retrieve the next page of results in SearchMediaPlannersRequest.page_token.", + "type": "string" + } + }, + "type": "object" + }, "Sort": { "description": "Represents a sorting in a report.", "id": "Sort", diff --git a/discovery/deepreview-v1.json b/discovery/deepreview-v1.json index e69c952e11..3d93e0cd7c 100644 --- a/discovery/deepreview-v1.json +++ b/discovery/deepreview-v1.json @@ -12,9 +12,9 @@ "baseUrl": "https://deepreview.googleapis.com/", "batchPath": "batch", "canonicalName": "DeepReview", - "description": "Deep Review API for automated conference-quality scientific paper reviews.", + "description": "Deep Review API for automated, in-depth document reviews.", "discoveryVersion": "v1", - "documentationLink": "https://research.google/", + "documentationLink": "https://research.google/deepreview", "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -535,9 +535,38 @@ } } } + }, + "v1": { + "methods": { + "getUserQuota": { + "description": "Retrieves the review quota limits and sliding-window usage for the authenticated caller.", + "flatPath": "v1/userQuota", + "httpMethod": "GET", + "id": "deepreview.getUserQuota", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the singleton user quota to retrieve. Format: `userQuota`", + "location": "path", + "pattern": "^userQuota$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "UserQuota" + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.file" + ] + } + } } }, - "revision": "20261016", + "revision": "20261020", "rootUrl": "https://deepreview.googleapis.com/", "schemas": { "AnchoredReviewComment": { @@ -1366,6 +1395,46 @@ } }, "type": "object" + }, + "UserQuota": { + "description": "Singleton resource representing the authenticated caller's review quota limits and sliding-window usage.", + "id": "UserQuota", + "properties": { + "customLimitEnabled": { + "description": "Output only. Whether a custom per-user quota override is active for this user.", + "readOnly": true, + "type": "boolean" + }, + "maxReviewCountPerWeek": { + "description": "Output only. Maximum free-tier reviews allowed per rolling 7-day window.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "name": { + "description": "Identifier. Resource name of the singleton user quota (`userQuota`).", + "type": "string" + }, + "nextAvailableTime": { + "description": "Output only. Timestamp when the next review quota slot becomes available if `remaining_review_count` is 0; unset when quota is currently available.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "remainingReviewCount": { + "description": "Output only. Remaining free-tier reviews available in the current rolling 7-day window (`max(0, max_review_count_per_week - used_review_count)`).", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "usedReviewCount": { + "description": "Output only. Number of free-tier reviews used in the past 7 days.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/dialogflow-v2.json b/discovery/dialogflow-v2.json index e18c58b71c..6e6270eb89 100644 --- a/discovery/dialogflow-v2.json +++ b/discovery/dialogflow-v2.json @@ -8933,7 +8933,7 @@ } } }, - "revision": "20261015", + "revision": "20261018", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -13678,11 +13678,38 @@ ], "type": "string" }, + "callCompanionAuthCode": { + "format": "byte", + "type": "string" + }, "cxCurrentPage": { "type": "string" }, "detectIntentResponse": { "$ref": "GoogleCloudDialogflowV2DetectIntentResponse" + }, + "event": { + "type": "string" + }, + "intent": { + "type": "string" + }, + "matchConfidence": { + "format": "float", + "type": "number" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "responseMessages": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessage" + }, + "type": "array" } }, "type": "object" @@ -13880,6 +13907,18 @@ "" ], "type": "string" + }, + "parameterOverrides": { + "items": { + "$ref": "GoogleCloudDialogflowV2ParameterOverride" + }, + "type": "array" + }, + "proactiveEnabled": { + "type": "boolean" + }, + "reactiveEnabled": { + "type": "boolean" } }, "type": "object" @@ -18331,6 +18370,12 @@ "readOnly": true, "type": "string" }, + "responseMessages": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessage" + }, + "type": "array" + }, "sendTime": { "format": "google-datetime", "type": "string" @@ -18485,6 +18530,21 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2ParameterOverride": { + "id": "GoogleCloudDialogflowV2ParameterOverride", + "properties": { + "contextReferenceKey": { + "type": "string" + }, + "fieldPath": { + "type": "string" + }, + "parameterName": { + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2Participant": { "id": "GoogleCloudDialogflowV2Participant", "properties": { @@ -18772,6 +18832,104 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2ResponseMessage": { + "id": "GoogleCloudDialogflowV2ResponseMessage", + "properties": { + "endInteraction": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageEndInteraction" + }, + "liveAgentHandoff": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff" + }, + "mixedAudio": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageMixedAudio" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "telephonyTransferCall": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall" + }, + "text": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageText" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageEndInteraction": { + "id": "GoogleCloudDialogflowV2ResponseMessageEndInteraction", + "properties": {}, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff": { + "id": "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff", + "properties": { + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageMixedAudio": { + "id": "GoogleCloudDialogflowV2ResponseMessageMixedAudio", + "properties": { + "segments": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment": { + "id": "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment", + "properties": { + "allowPlaybackInterruption": { + "type": "boolean" + }, + "audio": { + "format": "byte", + "type": "string" + }, + "uri": { + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall": { + "id": "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall", + "properties": { + "phoneNumber": { + "type": "string" + }, + "sipUri": { + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageText": { + "id": "GoogleCloudDialogflowV2ResponseMessageText", + "properties": { + "text": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2RestoreAgentRequest": { "id": "GoogleCloudDialogflowV2RestoreAgentRequest", "properties": { @@ -19179,6 +19337,10 @@ "properties": { "queryTextSentiment": { "$ref": "GoogleCloudDialogflowV2Sentiment" + }, + "status": { + "$ref": "GoogleRpcStatus", + "readOnly": true } }, "type": "object" @@ -21046,6 +21208,18 @@ "operationId": { "type": "string" }, + "parameterOverrides": { + "items": { + "$ref": "GoogleCloudDialogflowV2ParameterOverride" + }, + "type": "array" + }, + "proactiveEnabled": { + "type": "boolean" + }, + "reactiveEnabled": { + "type": "boolean" + }, "toolset": { "type": "string" } @@ -23906,6 +24080,10 @@ "properties": { "queryTextSentiment": { "$ref": "GoogleCloudDialogflowV2beta1Sentiment" + }, + "status": { + "$ref": "GoogleRpcStatus", + "readOnly": true } }, "type": "object" diff --git a/discovery/dialogflow-v2beta1.json b/discovery/dialogflow-v2beta1.json index 2e77fbff36..fa6780d8cc 100644 --- a/discovery/dialogflow-v2beta1.json +++ b/discovery/dialogflow-v2beta1.json @@ -8584,7 +8584,7 @@ } } }, - "revision": "20261015", + "revision": "20261018", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -14958,6 +14958,12 @@ "readOnly": true, "type": "string" }, + "responseMessages": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessage" + }, + "type": "array" + }, "sendTime": { "format": "google-datetime", "type": "string" @@ -15077,6 +15083,104 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2ResponseMessage": { + "id": "GoogleCloudDialogflowV2ResponseMessage", + "properties": { + "endInteraction": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageEndInteraction" + }, + "liveAgentHandoff": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff" + }, + "mixedAudio": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageMixedAudio" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "telephonyTransferCall": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall" + }, + "text": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageText" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageEndInteraction": { + "id": "GoogleCloudDialogflowV2ResponseMessageEndInteraction", + "properties": {}, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff": { + "id": "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff", + "properties": { + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageMixedAudio": { + "id": "GoogleCloudDialogflowV2ResponseMessageMixedAudio", + "properties": { + "segments": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment": { + "id": "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment", + "properties": { + "allowPlaybackInterruption": { + "type": "boolean" + }, + "audio": { + "format": "byte", + "type": "string" + }, + "uri": { + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall": { + "id": "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall", + "properties": { + "phoneNumber": { + "type": "string" + }, + "sipUri": { + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageText": { + "id": "GoogleCloudDialogflowV2ResponseMessageText", + "properties": { + "text": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2SearchEntryPoint": { "id": "GoogleCloudDialogflowV2SearchEntryPoint", "properties": { @@ -15125,6 +15229,10 @@ "properties": { "queryTextSentiment": { "$ref": "GoogleCloudDialogflowV2Sentiment" + }, + "status": { + "$ref": "GoogleRpcStatus", + "readOnly": true } }, "type": "object" @@ -16617,6 +16725,18 @@ "" ], "type": "string" + }, + "parameterOverrides": { + "items": { + "$ref": "GoogleCloudDialogflowV2beta1ParameterOverride" + }, + "type": "array" + }, + "proactiveEnabled": { + "type": "boolean" + }, + "reactiveEnabled": { + "type": "boolean" } }, "type": "object" @@ -21171,6 +21291,21 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2beta1ParameterOverride": { + "id": "GoogleCloudDialogflowV2beta1ParameterOverride", + "properties": { + "contextReferenceKey": { + "type": "string" + }, + "fieldPath": { + "type": "string" + }, + "parameterName": { + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2beta1Participant": { "id": "GoogleCloudDialogflowV2beta1Participant", "properties": { @@ -22031,6 +22166,10 @@ "properties": { "queryTextSentiment": { "$ref": "GoogleCloudDialogflowV2beta1Sentiment" + }, + "status": { + "$ref": "GoogleRpcStatus", + "readOnly": true } }, "type": "object" @@ -24032,6 +24171,18 @@ "operationId": { "type": "string" }, + "parameterOverrides": { + "items": { + "$ref": "GoogleCloudDialogflowV2beta1ParameterOverride" + }, + "type": "array" + }, + "proactiveEnabled": { + "type": "boolean" + }, + "reactiveEnabled": { + "type": "boolean" + }, "toolset": { "type": "string" } diff --git a/discovery/dialogflow-v3.json b/discovery/dialogflow-v3.json index 2e2bd3be6a..5c9e67e862 100644 --- a/discovery/dialogflow-v3.json +++ b/discovery/dialogflow-v3.json @@ -5031,7 +5031,7 @@ } } }, - "revision": "20260929", + "revision": "20261018", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3Action": { @@ -15623,6 +15623,12 @@ "readOnly": true, "type": "string" }, + "responseMessages": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessage" + }, + "type": "array" + }, "sendTime": { "format": "google-datetime", "type": "string" @@ -15742,6 +15748,104 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2ResponseMessage": { + "id": "GoogleCloudDialogflowV2ResponseMessage", + "properties": { + "endInteraction": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageEndInteraction" + }, + "liveAgentHandoff": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff" + }, + "mixedAudio": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageMixedAudio" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "telephonyTransferCall": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall" + }, + "text": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageText" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageEndInteraction": { + "id": "GoogleCloudDialogflowV2ResponseMessageEndInteraction", + "properties": {}, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff": { + "id": "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff", + "properties": { + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageMixedAudio": { + "id": "GoogleCloudDialogflowV2ResponseMessageMixedAudio", + "properties": { + "segments": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment": { + "id": "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment", + "properties": { + "allowPlaybackInterruption": { + "type": "boolean" + }, + "audio": { + "format": "byte", + "type": "string" + }, + "uri": { + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall": { + "id": "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall", + "properties": { + "phoneNumber": { + "type": "string" + }, + "sipUri": { + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageText": { + "id": "GoogleCloudDialogflowV2ResponseMessageText", + "properties": { + "text": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2SearchEntryPoint": { "id": "GoogleCloudDialogflowV2SearchEntryPoint", "properties": { @@ -15790,6 +15894,10 @@ "properties": { "queryTextSentiment": { "$ref": "GoogleCloudDialogflowV2Sentiment" + }, + "status": { + "$ref": "GoogleRpcStatus", + "readOnly": true } }, "type": "object" @@ -18998,6 +19106,10 @@ "properties": { "queryTextSentiment": { "$ref": "GoogleCloudDialogflowV2beta1Sentiment" + }, + "status": { + "$ref": "GoogleRpcStatus", + "readOnly": true } }, "type": "object" diff --git a/discovery/dialogflow-v3beta1.json b/discovery/dialogflow-v3beta1.json index d70e9db8bb..8e23d4792e 100644 --- a/discovery/dialogflow-v3beta1.json +++ b/discovery/dialogflow-v3beta1.json @@ -5151,7 +5151,7 @@ } } }, - "revision": "20260929", + "revision": "20261018", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -16668,6 +16668,12 @@ "readOnly": true, "type": "string" }, + "responseMessages": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessage" + }, + "type": "array" + }, "sendTime": { "format": "google-datetime", "type": "string" @@ -16787,6 +16793,104 @@ }, "type": "object" }, + "GoogleCloudDialogflowV2ResponseMessage": { + "id": "GoogleCloudDialogflowV2ResponseMessage", + "properties": { + "endInteraction": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageEndInteraction" + }, + "liveAgentHandoff": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff" + }, + "mixedAudio": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageMixedAudio" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + }, + "telephonyTransferCall": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall" + }, + "text": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageText" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageEndInteraction": { + "id": "GoogleCloudDialogflowV2ResponseMessageEndInteraction", + "properties": {}, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff": { + "id": "GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff", + "properties": { + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageMixedAudio": { + "id": "GoogleCloudDialogflowV2ResponseMessageMixedAudio", + "properties": { + "segments": { + "items": { + "$ref": "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment": { + "id": "GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment", + "properties": { + "allowPlaybackInterruption": { + "type": "boolean" + }, + "audio": { + "format": "byte", + "type": "string" + }, + "uri": { + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall": { + "id": "GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall", + "properties": { + "phoneNumber": { + "type": "string" + }, + "sipUri": { + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDialogflowV2ResponseMessageText": { + "id": "GoogleCloudDialogflowV2ResponseMessageText", + "properties": { + "text": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDialogflowV2SearchEntryPoint": { "id": "GoogleCloudDialogflowV2SearchEntryPoint", "properties": { @@ -16835,6 +16939,10 @@ "properties": { "queryTextSentiment": { "$ref": "GoogleCloudDialogflowV2Sentiment" + }, + "status": { + "$ref": "GoogleRpcStatus", + "readOnly": true } }, "type": "object" @@ -20043,6 +20151,10 @@ "properties": { "queryTextSentiment": { "$ref": "GoogleCloudDialogflowV2beta1Sentiment" + }, + "status": { + "$ref": "GoogleRpcStatus", + "readOnly": true } }, "type": "object" diff --git a/discovery/displayvideo-v2.json b/discovery/displayvideo-v2.json index 0c57e61c45..1eae785ddb 100644 --- a/discovery/displayvideo-v2.json +++ b/discovery/displayvideo-v2.json @@ -1891,7 +1891,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -1915,6 +1915,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -1965,6 +1966,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -2045,7 +2047,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -2069,6 +2071,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -2119,6 +2122,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -2196,7 +2200,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -2220,6 +2224,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -2270,6 +2275,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -2360,7 +2366,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -2384,6 +2390,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -2434,6 +2441,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -3470,7 +3478,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3494,6 +3502,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -3544,6 +3553,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -3615,7 +3625,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3639,6 +3649,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -3689,6 +3700,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -3781,6 +3793,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -3831,6 +3844,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -3936,6 +3950,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -3986,6 +4001,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -4313,6 +4329,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -4363,6 +4380,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -4477,6 +4495,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -4527,6 +4546,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -6559,6 +6579,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -6609,6 +6630,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -6704,6 +6726,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -6754,6 +6777,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -6846,6 +6870,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -6896,6 +6921,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7001,6 +7027,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7051,6 +7078,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7180,7 +7208,7 @@ "type": "string" }, "targetingType": { - "description": "Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", + "description": "Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -7204,6 +7232,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7254,6 +7283,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7332,7 +7362,7 @@ "type": "string" }, "targetingType": { - "description": "Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", + "description": "Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -7356,6 +7386,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7406,6 +7437,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7481,6 +7513,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7531,6 +7564,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7755,7 +7789,7 @@ } } }, - "revision": "20261012", + "revision": "20261021", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -8591,7 +8625,7 @@ }, "inventorySourceDetails": { "$ref": "InventorySourceAssignedTargetingOptionDetails", - "description": "Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`." + "description": "Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`." }, "inventorySourceGroupDetails": { "$ref": "InventorySourceGroupAssignedTargetingOptionDetails", @@ -8683,6 +8717,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -8733,6 +8768,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -9171,14 +9207,14 @@ "id": "BulkEditAdvertiserAssignedTargetingOptionsRequest", "properties": { "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -9286,14 +9322,14 @@ "id": "BulkEditAssignedTargetingOptionsRequest", "properties": { "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -10629,6 +10665,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -10679,6 +10716,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -10741,67 +10779,14 @@ "description": "Required. The SDF version of the downloaded file. If set to `SDF_VERSION_UNSPECIFIED`, this will default to the version specified by the advertiser or partner identified by `root_id`. An advertiser inherits its SDF version from its partner unless configured otherwise.", "enum": [ "SDF_VERSION_UNSPECIFIED", - "SDF_VERSION_3_1", - "SDF_VERSION_4", - "SDF_VERSION_4_1", - "SDF_VERSION_4_2", - "SDF_VERSION_5", - "SDF_VERSION_5_1", - "SDF_VERSION_5_2", - "SDF_VERSION_5_3", - "SDF_VERSION_5_4", - "SDF_VERSION_5_5", - "SDF_VERSION_6", - "SDF_VERSION_7", - "SDF_VERSION_7_1", - "SDF_VERSION_8", - "SDF_VERSION_8_1", "SDF_VERSION_9", "SDF_VERSION_9_1", "SDF_VERSION_9_2", "SDF_VERSION_10", "SDF_VERSION_10_1" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false, - false, - false, - false - ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -11603,6 +11588,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -11653,6 +11639,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -11817,8 +11804,9 @@ "type": "string" }, "youtubeAndPartnersBidMultiplier": { - "description": "Optional. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items.", + "description": "Output only. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items.", "format": "double", + "readOnly": true, "type": "number" } }, @@ -11860,30 +11848,11 @@ "description": "Required. The display name of the digital content label rating tier to be EXCLUDED. This field only accepts the value `CONTENT_RATING_TIER_UNRATED`.", "enum": [ "CONTENT_RATING_TIER_UNSPECIFIED", - "CONTENT_RATING_TIER_UNRATED", - "CONTENT_RATING_TIER_GENERAL", - "CONTENT_RATING_TIER_PARENTAL_GUIDANCE", - "CONTENT_RATING_TIER_TEENS", - "CONTENT_RATING_TIER_MATURE", - "CONTENT_RATING_TIER_FAMILIES" - ], - "enumDeprecated": [ - false, - false, - true, - true, - true, - true, - true + "CONTENT_RATING_TIER_UNRATED" ], "enumDescriptions": [ "Content label is not specified in this version. This enum is a place holder for a default value and does not represent a real content rating.", - "Content that has not been labeled.", - "Deprecated: This content rating tier is no longer supported. Content suitable for general audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable for most audiences with parental guidance.", - "Deprecated: This content rating tier is no longer supported. Content suitable for teen and older audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable only for mature audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable for family audiences. It is a subset of CONTENT_RATING_TIER_GENERAL. Only applicable to YouTube and Partners line items." + "Content that has not been labeled." ], "type": "string" } @@ -11898,30 +11867,11 @@ "description": "Output only. An enum for the content label brand safety tiers.", "enum": [ "CONTENT_RATING_TIER_UNSPECIFIED", - "CONTENT_RATING_TIER_UNRATED", - "CONTENT_RATING_TIER_GENERAL", - "CONTENT_RATING_TIER_PARENTAL_GUIDANCE", - "CONTENT_RATING_TIER_TEENS", - "CONTENT_RATING_TIER_MATURE", - "CONTENT_RATING_TIER_FAMILIES" - ], - "enumDeprecated": [ - false, - false, - true, - true, - true, - true, - true + "CONTENT_RATING_TIER_UNRATED" ], "enumDescriptions": [ "Content label is not specified in this version. This enum is a place holder for a default value and does not represent a real content rating.", - "Content that has not been labeled.", - "Deprecated: This content rating tier is no longer supported. Content suitable for general audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable for most audiences with parental guidance.", - "Deprecated: This content rating tier is no longer supported. Content suitable for teen and older audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable only for mature audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable for family audiences. It is a subset of CONTENT_RATING_TIER_GENERAL. Only applicable to YouTube and Partners line items." + "Content that has not been labeled." ], "readOnly": true, "type": "string" @@ -13777,26 +13727,13 @@ "GOOGLE_AUDIENCE_TYPE_UNSPECIFIED", "GOOGLE_AUDIENCE_TYPE_AFFINITY", "GOOGLE_AUDIENCE_TYPE_IN_MARKET", - "GOOGLE_AUDIENCE_TYPE_INSTALLED_APPS", - "GOOGLE_AUDIENCE_TYPE_NEW_MOBILE_DEVICES", "GOOGLE_AUDIENCE_TYPE_LIFE_EVENT", "GOOGLE_AUDIENCE_TYPE_EXTENDED_DEMOGRAPHIC" ], - "enumDeprecated": [ - false, - false, - false, - true, - true, - false, - false - ], "enumDescriptions": [ "Default value when type is not specified or is unknown.", "Affinity type Google audience.", "In-Market type Google audience.", - "Installed-Apps type Google audience.", - "New-Mobile-Devices type Google audience.", "Life-Event type Google audience.", "Extended-Demographic type Google audience." ], @@ -14758,7 +14695,7 @@ "type": "object" }, "InventorySourceAssignedTargetingOptionDetails": { - "description": "Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is one of `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`.", + "description": "Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`.", "id": "InventorySourceAssignedTargetingOptionDetails", "properties": { "inventorySourceId": { @@ -16836,7 +16773,7 @@ "type": "string" }, "invoiceType": { - "description": "The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_ADLOOX` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types.", + "description": "The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_PEER39` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types.", "enum": [ "PARTNER_COST_INVOICE_TYPE_UNSPECIFIED", "PARTNER_COST_INVOICE_TYPE_DV360", @@ -17485,67 +17422,14 @@ "description": "Required. The version of SDF being used.", "enum": [ "SDF_VERSION_UNSPECIFIED", - "SDF_VERSION_3_1", - "SDF_VERSION_4", - "SDF_VERSION_4_1", - "SDF_VERSION_4_2", - "SDF_VERSION_5", - "SDF_VERSION_5_1", - "SDF_VERSION_5_2", - "SDF_VERSION_5_3", - "SDF_VERSION_5_4", - "SDF_VERSION_5_5", - "SDF_VERSION_6", - "SDF_VERSION_7", - "SDF_VERSION_7_1", - "SDF_VERSION_8", - "SDF_VERSION_8_1", "SDF_VERSION_9", "SDF_VERSION_9_1", "SDF_VERSION_9_2", "SDF_VERSION_10", "SDF_VERSION_10_1" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false, - false, - false, - false - ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -17586,67 +17470,14 @@ "description": "The SDF version used to execute this download task.", "enum": [ "SDF_VERSION_UNSPECIFIED", - "SDF_VERSION_3_1", - "SDF_VERSION_4", - "SDF_VERSION_4_1", - "SDF_VERSION_4_2", - "SDF_VERSION_5", - "SDF_VERSION_5_1", - "SDF_VERSION_5_2", - "SDF_VERSION_5_3", - "SDF_VERSION_5_4", - "SDF_VERSION_5_5", - "SDF_VERSION_6", - "SDF_VERSION_7", - "SDF_VERSION_7_1", - "SDF_VERSION_8", - "SDF_VERSION_8_1", "SDF_VERSION_9", "SDF_VERSION_9_1", "SDF_VERSION_9_2", "SDF_VERSION_10", "SDF_VERSION_10_1" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false, - false, - false, - false - ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -17717,67 +17548,11 @@ "description": "Required. An enum for the Display & Video 360 Sensitive category content classified to be EXCLUDED. This field only accepts the following values: * `SENSITIVE_CATEGORY_EMBEDDED_VIDEO` * `SENSITIVE_CATEGORY_LIVE_STREAMING_VIDEO`", "enum": [ "SENSITIVE_CATEGORY_UNSPECIFIED", - "SENSITIVE_CATEGORY_ADULT", - "SENSITIVE_CATEGORY_DEROGATORY", - "SENSITIVE_CATEGORY_DOWNLOADS_SHARING", - "SENSITIVE_CATEGORY_WEAPONS", - "SENSITIVE_CATEGORY_GAMBLING", - "SENSITIVE_CATEGORY_VIOLENCE", - "SENSITIVE_CATEGORY_SUGGESTIVE", - "SENSITIVE_CATEGORY_PROFANITY", - "SENSITIVE_CATEGORY_ALCOHOL", - "SENSITIVE_CATEGORY_DRUGS", - "SENSITIVE_CATEGORY_TOBACCO", - "SENSITIVE_CATEGORY_POLITICS", - "SENSITIVE_CATEGORY_RELIGION", - "SENSITIVE_CATEGORY_TRAGEDY", - "SENSITIVE_CATEGORY_TRANSPORTATION_ACCIDENTS", - "SENSITIVE_CATEGORY_SENSITIVE_SOCIAL_ISSUES", - "SENSITIVE_CATEGORY_SHOCKING", "SENSITIVE_CATEGORY_EMBEDDED_VIDEO", "SENSITIVE_CATEGORY_LIVE_STREAMING_VIDEO" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false - ], "enumDescriptions": [ "Serves as a placeholder and doesn't specify a Display & Video 360 sensitive category.", - "Deprecated: This sensitive category is no longer supported. Adult or pornographic text, image, or video content.", - "Deprecated: This sensitive category is no longer supported. Content that may be construed as biased against individuals, groups, or organizations based on criteria such as race, religion, disability, sex, age, veteran status, sexual orientation, gender identity, or political affiliation. May also indicate discussion of such content, for instance, in an academic or journalistic context.", - "Deprecated: This sensitive category is no longer supported. Content related to audio, video, or software downloads.", - "Deprecated: This sensitive category is no longer supported. Contains content related to personal weapons, including knives, guns, small firearms, and ammunition. Selecting either \"weapons\" or \"sensitive social issues\" will result in selecting both.", - "Deprecated: This sensitive category is no longer supported. Contains content related to betting or wagering in a real-world or online setting.", - "Deprecated: This sensitive category is no longer supported. Content which may be considered graphically violent, gory, gruesome, or shocking, such as street fighting videos, accident photos, descriptions of torture, etc.", - "Deprecated: This sensitive category is no longer supported. Adult content, as well as suggestive content that's not explicitly pornographic. This category includes all pages categorized as adult.", - "Deprecated: This sensitive category is no longer supported. Prominent use of words considered indecent, such as curse words and sexual slang. Pages with only very occasional usage, such as news sites that might include such words in a quotation, are not included.", - "Deprecated: This sensitive category is no longer supported. Contains content related to alcoholic beverages, alcohol brands, recipes, etc.", - "Deprecated: This sensitive category is no longer supported. Contains content related to the recreational use of legal or illegal drugs, as well as to drug paraphernalia or cultivation.", - "Deprecated: This sensitive category is no longer supported. Contains content related to tobacco and tobacco accessories, including lighters, humidors, ashtrays, etc.", - "Deprecated: This sensitive category is no longer supported. Political news and media, including discussions of social, governmental, and public policy.", - "Deprecated: This sensitive category is no longer supported. Content related to religious thought or beliefs.", - "Deprecated: This sensitive category is no longer supported. Content related to death, disasters, accidents, war, etc.", - "Deprecated: This sensitive category is no longer supported. Content related to motor vehicle, aviation or other transportation accidents.", - "Deprecated: This sensitive category is no longer supported. Issues that evoke strong, opposing views and spark debate. These include issues that are controversial in most countries and markets (such as abortion), as well as those that are controversial in specific countries and markets (such as immigration reform in the United States).", - "Deprecated: This sensitive category is no longer supported. Content which may be considered shocking or disturbing, such as violent news stories, stunts, or toilet humor.", "YouTube videos embedded on websites outside of YouTube.com.", "Video of live events streamed over the internet." ], @@ -17794,67 +17569,11 @@ "description": "Output only. An enum for the Display & Video 360 Sensitive category content classifier.", "enum": [ "SENSITIVE_CATEGORY_UNSPECIFIED", - "SENSITIVE_CATEGORY_ADULT", - "SENSITIVE_CATEGORY_DEROGATORY", - "SENSITIVE_CATEGORY_DOWNLOADS_SHARING", - "SENSITIVE_CATEGORY_WEAPONS", - "SENSITIVE_CATEGORY_GAMBLING", - "SENSITIVE_CATEGORY_VIOLENCE", - "SENSITIVE_CATEGORY_SUGGESTIVE", - "SENSITIVE_CATEGORY_PROFANITY", - "SENSITIVE_CATEGORY_ALCOHOL", - "SENSITIVE_CATEGORY_DRUGS", - "SENSITIVE_CATEGORY_TOBACCO", - "SENSITIVE_CATEGORY_POLITICS", - "SENSITIVE_CATEGORY_RELIGION", - "SENSITIVE_CATEGORY_TRAGEDY", - "SENSITIVE_CATEGORY_TRANSPORTATION_ACCIDENTS", - "SENSITIVE_CATEGORY_SENSITIVE_SOCIAL_ISSUES", - "SENSITIVE_CATEGORY_SHOCKING", "SENSITIVE_CATEGORY_EMBEDDED_VIDEO", "SENSITIVE_CATEGORY_LIVE_STREAMING_VIDEO" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false - ], "enumDescriptions": [ "Serves as a placeholder and doesn't specify a Display & Video 360 sensitive category.", - "Deprecated: This sensitive category is no longer supported. Adult or pornographic text, image, or video content.", - "Deprecated: This sensitive category is no longer supported. Content that may be construed as biased against individuals, groups, or organizations based on criteria such as race, religion, disability, sex, age, veteran status, sexual orientation, gender identity, or political affiliation. May also indicate discussion of such content, for instance, in an academic or journalistic context.", - "Deprecated: This sensitive category is no longer supported. Content related to audio, video, or software downloads.", - "Deprecated: This sensitive category is no longer supported. Contains content related to personal weapons, including knives, guns, small firearms, and ammunition. Selecting either \"weapons\" or \"sensitive social issues\" will result in selecting both.", - "Deprecated: This sensitive category is no longer supported. Contains content related to betting or wagering in a real-world or online setting.", - "Deprecated: This sensitive category is no longer supported. Content which may be considered graphically violent, gory, gruesome, or shocking, such as street fighting videos, accident photos, descriptions of torture, etc.", - "Deprecated: This sensitive category is no longer supported. Adult content, as well as suggestive content that's not explicitly pornographic. This category includes all pages categorized as adult.", - "Deprecated: This sensitive category is no longer supported. Prominent use of words considered indecent, such as curse words and sexual slang. Pages with only very occasional usage, such as news sites that might include such words in a quotation, are not included.", - "Deprecated: This sensitive category is no longer supported. Contains content related to alcoholic beverages, alcohol brands, recipes, etc.", - "Deprecated: This sensitive category is no longer supported. Contains content related to the recreational use of legal or illegal drugs, as well as to drug paraphernalia or cultivation.", - "Deprecated: This sensitive category is no longer supported. Contains content related to tobacco and tobacco accessories, including lighters, humidors, ashtrays, etc.", - "Deprecated: This sensitive category is no longer supported. Political news and media, including discussions of social, governmental, and public policy.", - "Deprecated: This sensitive category is no longer supported. Content related to religious thought or beliefs.", - "Deprecated: This sensitive category is no longer supported. Content related to death, disasters, accidents, war, etc.", - "Deprecated: This sensitive category is no longer supported. Content related to motor vehicle, aviation or other transportation accidents.", - "Deprecated: This sensitive category is no longer supported. Issues that evoke strong, opposing views and spark debate. These include issues that are controversial in most countries and markets (such as abortion), as well as those that are controversial in specific countries and markets (such as immigration reform in the United States).", - "Deprecated: This sensitive category is no longer supported. Content which may be considered shocking or disturbing, such as violent news stories, stunts, or toilet humor.", "YouTube videos embedded on websites outside of YouTube.com.", "Video of live events streamed over the internet." ], @@ -18203,6 +17922,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -18253,6 +17973,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -18838,6 +18559,10 @@ }, "type": "array" }, + "businessName": { + "description": "Optional. The business name shown on the ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied.", + "type": "string" + }, "companionBanners": { "description": "Optional. The list of companion banners used by this ad.", "items": { @@ -18883,6 +18608,10 @@ }, "type": "array" }, + "logo": { + "$ref": "ImageAsset", + "description": "Optional. The logo image used by this ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied." + }, "longHeadlines": { "description": "Optional. The list of long headlines shown on the call-to-action banner. Must be set unless the parent line item's lineItemType is `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE`, in which case this field cannot be set.", "items": { diff --git a/discovery/displayvideo-v3.json b/discovery/displayvideo-v3.json index 135f3406c5..93bb578ae2 100644 --- a/discovery/displayvideo-v3.json +++ b/discovery/displayvideo-v3.json @@ -877,7 +877,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -901,6 +901,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -952,6 +953,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -1033,7 +1035,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -1057,6 +1059,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -1108,6 +1111,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -1186,7 +1190,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -1210,6 +1214,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -1261,6 +1266,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -1352,7 +1358,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -1376,6 +1382,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -1427,6 +1434,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -2992,7 +3000,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3016,6 +3024,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -3067,6 +3076,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -3148,7 +3158,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3172,6 +3182,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -3223,6 +3234,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -3301,7 +3313,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3325,6 +3337,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -3376,6 +3389,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -3467,7 +3481,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3491,6 +3505,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -3542,6 +3557,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -4344,7 +4360,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -4368,6 +4384,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -4419,6 +4436,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -4491,7 +4509,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -4515,6 +4533,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -4566,6 +4585,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -4659,6 +4679,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -4710,6 +4731,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -4816,6 +4838,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -4867,6 +4890,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7074,6 +7098,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7125,6 +7150,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7221,6 +7247,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7272,6 +7299,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7365,6 +7393,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7416,6 +7445,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7522,6 +7552,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7573,6 +7604,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7703,7 +7735,7 @@ "type": "string" }, "targetingType": { - "description": "Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", + "description": "Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -7727,6 +7759,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7778,6 +7811,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -7857,7 +7891,7 @@ "type": "string" }, "targetingType": { - "description": "Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", + "description": "Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -7881,6 +7915,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -7932,6 +7967,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -8008,6 +8044,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -8059,6 +8096,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -8284,7 +8322,7 @@ } } }, - "revision": "20261012", + "revision": "20261021", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActiveViewVideoViewabilityMetricConfig": { @@ -10855,7 +10893,7 @@ }, "inventorySourceDetails": { "$ref": "InventorySourceAssignedTargetingOptionDetails", - "description": "Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`." + "description": "Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`." }, "inventorySourceGroupDetails": { "$ref": "InventorySourceGroupAssignedTargetingOptionDetails", @@ -10947,6 +10985,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -10998,6 +11037,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -11456,14 +11496,14 @@ "type": "array" }, "createRequests": { - "description": "Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -11510,14 +11550,14 @@ "id": "BulkEditAdvertiserAssignedTargetingOptionsRequest", "properties": { "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -11625,14 +11665,14 @@ "id": "BulkEditAssignedTargetingOptionsRequest", "properties": { "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -13107,6 +13147,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -13158,6 +13199,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -13221,67 +13263,14 @@ "description": "Required. The SDF version of the downloaded file. If set to `SDF_VERSION_UNSPECIFIED`, this will default to the version specified by the advertiser or partner identified by `root_id`. An advertiser inherits its SDF version from its partner unless configured otherwise.", "enum": [ "SDF_VERSION_UNSPECIFIED", - "SDF_VERSION_3_1", - "SDF_VERSION_4", - "SDF_VERSION_4_1", - "SDF_VERSION_4_2", - "SDF_VERSION_5", - "SDF_VERSION_5_1", - "SDF_VERSION_5_2", - "SDF_VERSION_5_3", - "SDF_VERSION_5_4", - "SDF_VERSION_5_5", - "SDF_VERSION_6", - "SDF_VERSION_7", - "SDF_VERSION_7_1", - "SDF_VERSION_8", - "SDF_VERSION_8_1", "SDF_VERSION_9", "SDF_VERSION_9_1", "SDF_VERSION_9_2", "SDF_VERSION_10", "SDF_VERSION_10_1" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false, - false, - false, - false - ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -14257,6 +14246,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -14308,6 +14298,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -14842,8 +14833,9 @@ "type": "string" }, "youtubeAndPartnersBidMultiplier": { - "description": "Optional. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items.", + "description": "Output only. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items.", "format": "double", + "readOnly": true, "type": "number" } }, @@ -14885,30 +14877,11 @@ "description": "Required. The display name of the digital content label rating tier to be EXCLUDED. This field only accepts the value `CONTENT_RATING_TIER_UNRATED`.", "enum": [ "CONTENT_RATING_TIER_UNSPECIFIED", - "CONTENT_RATING_TIER_UNRATED", - "CONTENT_RATING_TIER_GENERAL", - "CONTENT_RATING_TIER_PARENTAL_GUIDANCE", - "CONTENT_RATING_TIER_TEENS", - "CONTENT_RATING_TIER_MATURE", - "CONTENT_RATING_TIER_FAMILIES" - ], - "enumDeprecated": [ - false, - false, - true, - true, - true, - true, - true + "CONTENT_RATING_TIER_UNRATED" ], "enumDescriptions": [ "Content label is not specified in this version. This enum is a place holder for a default value and does not represent a real content rating.", - "Content that has not been labeled.", - "Deprecated: This content rating tier is no longer supported. Content suitable for general audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable for most audiences with parental guidance.", - "Deprecated: This content rating tier is no longer supported. Content suitable for teen and older audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable only for mature audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable for family audiences. It is a subset of CONTENT_RATING_TIER_GENERAL. Only applicable to YouTube and Partners line items." + "Content that has not been labeled." ], "type": "string" } @@ -14923,30 +14896,11 @@ "description": "Output only. An enum for the content label brand safety tiers.", "enum": [ "CONTENT_RATING_TIER_UNSPECIFIED", - "CONTENT_RATING_TIER_UNRATED", - "CONTENT_RATING_TIER_GENERAL", - "CONTENT_RATING_TIER_PARENTAL_GUIDANCE", - "CONTENT_RATING_TIER_TEENS", - "CONTENT_RATING_TIER_MATURE", - "CONTENT_RATING_TIER_FAMILIES" - ], - "enumDeprecated": [ - false, - false, - true, - true, - true, - true, - true + "CONTENT_RATING_TIER_UNRATED" ], "enumDescriptions": [ "Content label is not specified in this version. This enum is a place holder for a default value and does not represent a real content rating.", - "Content that has not been labeled.", - "Deprecated: This content rating tier is no longer supported. Content suitable for general audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable for most audiences with parental guidance.", - "Deprecated: This content rating tier is no longer supported. Content suitable for teen and older audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable only for mature audiences.", - "Deprecated: This content rating tier is no longer supported. Content suitable for family audiences. It is a subset of CONTENT_RATING_TIER_GENERAL. Only applicable to YouTube and Partners line items." + "Content that has not been labeled." ], "readOnly": true, "type": "string" @@ -16896,26 +16850,13 @@ "GOOGLE_AUDIENCE_TYPE_UNSPECIFIED", "GOOGLE_AUDIENCE_TYPE_AFFINITY", "GOOGLE_AUDIENCE_TYPE_IN_MARKET", - "GOOGLE_AUDIENCE_TYPE_INSTALLED_APPS", - "GOOGLE_AUDIENCE_TYPE_NEW_MOBILE_DEVICES", "GOOGLE_AUDIENCE_TYPE_LIFE_EVENT", "GOOGLE_AUDIENCE_TYPE_EXTENDED_DEMOGRAPHIC" ], - "enumDeprecated": [ - false, - false, - false, - true, - true, - false, - false - ], "enumDescriptions": [ "Default value when type is not specified or is unknown.", "Affinity type Google audience.", "In-Market type Google audience.", - "Installed-Apps type Google audience.", - "New-Mobile-Devices type Google audience.", "Life-Event type Google audience.", "Extended-Demographic type Google audience." ], @@ -17539,7 +17480,7 @@ "type": "string" }, "optimizationObjective": { - "description": "Optional. Required. The optimization objective of the insertion order.", + "description": "Required. The optimization objective of the insertion order.", "enum": [ "OPTIMIZATION_OBJECTIVE_UNSPECIFIED", "CONVERSION", @@ -17899,7 +17840,7 @@ "type": "object" }, "InventorySourceAssignedTargetingOptionDetails": { - "description": "Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is one of `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`.", + "description": "Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`.", "id": "InventorySourceAssignedTargetingOptionDetails", "properties": { "inventorySourceId": { @@ -20053,7 +19994,7 @@ "type": "string" }, "invoiceType": { - "description": "The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_ADLOOX` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types.", + "description": "The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_PEER39` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types.", "enum": [ "PARTNER_COST_INVOICE_TYPE_UNSPECIFIED", "PARTNER_COST_INVOICE_TYPE_DV360", @@ -20702,67 +20643,14 @@ "description": "Required. The version of SDF being used.", "enum": [ "SDF_VERSION_UNSPECIFIED", - "SDF_VERSION_3_1", - "SDF_VERSION_4", - "SDF_VERSION_4_1", - "SDF_VERSION_4_2", - "SDF_VERSION_5", - "SDF_VERSION_5_1", - "SDF_VERSION_5_2", - "SDF_VERSION_5_3", - "SDF_VERSION_5_4", - "SDF_VERSION_5_5", - "SDF_VERSION_6", - "SDF_VERSION_7", - "SDF_VERSION_7_1", - "SDF_VERSION_8", - "SDF_VERSION_8_1", "SDF_VERSION_9", "SDF_VERSION_9_1", "SDF_VERSION_9_2", "SDF_VERSION_10", "SDF_VERSION_10_1" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false, - false, - false, - false - ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -20803,67 +20691,14 @@ "description": "The SDF version used to execute this download task.", "enum": [ "SDF_VERSION_UNSPECIFIED", - "SDF_VERSION_3_1", - "SDF_VERSION_4", - "SDF_VERSION_4_1", - "SDF_VERSION_4_2", - "SDF_VERSION_5", - "SDF_VERSION_5_1", - "SDF_VERSION_5_2", - "SDF_VERSION_5_3", - "SDF_VERSION_5_4", - "SDF_VERSION_5_5", - "SDF_VERSION_6", - "SDF_VERSION_7", - "SDF_VERSION_7_1", - "SDF_VERSION_8", - "SDF_VERSION_8_1", "SDF_VERSION_9", "SDF_VERSION_9_1", "SDF_VERSION_9_2", "SDF_VERSION_10", "SDF_VERSION_10_1" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false, - false, - false, - false - ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -20965,67 +20800,11 @@ "description": "Required. An enum for the Display & Video 360 Sensitive category content classified to be EXCLUDED. This field only accepts the following values: * `SENSITIVE_CATEGORY_EMBEDDED_VIDEO` * `SENSITIVE_CATEGORY_LIVE_STREAMING_VIDEO`", "enum": [ "SENSITIVE_CATEGORY_UNSPECIFIED", - "SENSITIVE_CATEGORY_ADULT", - "SENSITIVE_CATEGORY_DEROGATORY", - "SENSITIVE_CATEGORY_DOWNLOADS_SHARING", - "SENSITIVE_CATEGORY_WEAPONS", - "SENSITIVE_CATEGORY_GAMBLING", - "SENSITIVE_CATEGORY_VIOLENCE", - "SENSITIVE_CATEGORY_SUGGESTIVE", - "SENSITIVE_CATEGORY_PROFANITY", - "SENSITIVE_CATEGORY_ALCOHOL", - "SENSITIVE_CATEGORY_DRUGS", - "SENSITIVE_CATEGORY_TOBACCO", - "SENSITIVE_CATEGORY_POLITICS", - "SENSITIVE_CATEGORY_RELIGION", - "SENSITIVE_CATEGORY_TRAGEDY", - "SENSITIVE_CATEGORY_TRANSPORTATION_ACCIDENTS", - "SENSITIVE_CATEGORY_SENSITIVE_SOCIAL_ISSUES", - "SENSITIVE_CATEGORY_SHOCKING", "SENSITIVE_CATEGORY_EMBEDDED_VIDEO", "SENSITIVE_CATEGORY_LIVE_STREAMING_VIDEO" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false - ], "enumDescriptions": [ "Serves as a placeholder and doesn't specify a Display & Video 360 sensitive category.", - "Deprecated: This sensitive category is no longer supported. Adult or pornographic text, image, or video content.", - "Deprecated: This sensitive category is no longer supported. Content that may be construed as biased against individuals, groups, or organizations based on criteria such as race, religion, disability, sex, age, veteran status, sexual orientation, gender identity, or political affiliation. May also indicate discussion of such content, for instance, in an academic or journalistic context.", - "Deprecated: This sensitive category is no longer supported. Content related to audio, video, or software downloads.", - "Deprecated: This sensitive category is no longer supported. Contains content related to personal weapons, including knives, guns, small firearms, and ammunition. Selecting either \"weapons\" or \"sensitive social issues\" will result in selecting both.", - "Deprecated: This sensitive category is no longer supported. Contains content related to betting or wagering in a real-world or online setting.", - "Deprecated: This sensitive category is no longer supported. Content which may be considered graphically violent, gory, gruesome, or shocking, such as street fighting videos, accident photos, descriptions of torture, etc.", - "Deprecated: This sensitive category is no longer supported. Adult content, as well as suggestive content that's not explicitly pornographic. This category includes all pages categorized as adult.", - "Deprecated: This sensitive category is no longer supported. Prominent use of words considered indecent, such as curse words and sexual slang. Pages with only very occasional usage, such as news sites that might include such words in a quotation, are not included.", - "Deprecated: This sensitive category is no longer supported. Contains content related to alcoholic beverages, alcohol brands, recipes, etc.", - "Deprecated: This sensitive category is no longer supported. Contains content related to the recreational use of legal or illegal drugs, as well as to drug paraphernalia or cultivation.", - "Deprecated: This sensitive category is no longer supported. Contains content related to tobacco and tobacco accessories, including lighters, humidors, ashtrays, etc.", - "Deprecated: This sensitive category is no longer supported. Political news and media, including discussions of social, governmental, and public policy.", - "Deprecated: This sensitive category is no longer supported. Content related to religious thought or beliefs.", - "Deprecated: This sensitive category is no longer supported. Content related to death, disasters, accidents, war, etc.", - "Deprecated: This sensitive category is no longer supported. Content related to motor vehicle, aviation or other transportation accidents.", - "Deprecated: This sensitive category is no longer supported. Issues that evoke strong, opposing views and spark debate. These include issues that are controversial in most countries and markets (such as abortion), as well as those that are controversial in specific countries and markets (such as immigration reform in the United States).", - "Deprecated: This sensitive category is no longer supported. Content which may be considered shocking or disturbing, such as violent news stories, stunts, or toilet humor.", "YouTube videos embedded on websites outside of YouTube.com.", "Video of live events streamed over the internet." ], @@ -21042,67 +20821,11 @@ "description": "Output only. An enum for the Display & Video 360 Sensitive category content classifier.", "enum": [ "SENSITIVE_CATEGORY_UNSPECIFIED", - "SENSITIVE_CATEGORY_ADULT", - "SENSITIVE_CATEGORY_DEROGATORY", - "SENSITIVE_CATEGORY_DOWNLOADS_SHARING", - "SENSITIVE_CATEGORY_WEAPONS", - "SENSITIVE_CATEGORY_GAMBLING", - "SENSITIVE_CATEGORY_VIOLENCE", - "SENSITIVE_CATEGORY_SUGGESTIVE", - "SENSITIVE_CATEGORY_PROFANITY", - "SENSITIVE_CATEGORY_ALCOHOL", - "SENSITIVE_CATEGORY_DRUGS", - "SENSITIVE_CATEGORY_TOBACCO", - "SENSITIVE_CATEGORY_POLITICS", - "SENSITIVE_CATEGORY_RELIGION", - "SENSITIVE_CATEGORY_TRAGEDY", - "SENSITIVE_CATEGORY_TRANSPORTATION_ACCIDENTS", - "SENSITIVE_CATEGORY_SENSITIVE_SOCIAL_ISSUES", - "SENSITIVE_CATEGORY_SHOCKING", "SENSITIVE_CATEGORY_EMBEDDED_VIDEO", "SENSITIVE_CATEGORY_LIVE_STREAMING_VIDEO" ], - "enumDeprecated": [ - false, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - true, - false, - false - ], "enumDescriptions": [ "Serves as a placeholder and doesn't specify a Display & Video 360 sensitive category.", - "Deprecated: This sensitive category is no longer supported. Adult or pornographic text, image, or video content.", - "Deprecated: This sensitive category is no longer supported. Content that may be construed as biased against individuals, groups, or organizations based on criteria such as race, religion, disability, sex, age, veteran status, sexual orientation, gender identity, or political affiliation. May also indicate discussion of such content, for instance, in an academic or journalistic context.", - "Deprecated: This sensitive category is no longer supported. Content related to audio, video, or software downloads.", - "Deprecated: This sensitive category is no longer supported. Contains content related to personal weapons, including knives, guns, small firearms, and ammunition. Selecting either \"weapons\" or \"sensitive social issues\" will result in selecting both.", - "Deprecated: This sensitive category is no longer supported. Contains content related to betting or wagering in a real-world or online setting.", - "Deprecated: This sensitive category is no longer supported. Content which may be considered graphically violent, gory, gruesome, or shocking, such as street fighting videos, accident photos, descriptions of torture, etc.", - "Deprecated: This sensitive category is no longer supported. Adult content, as well as suggestive content that's not explicitly pornographic. This category includes all pages categorized as adult.", - "Deprecated: This sensitive category is no longer supported. Prominent use of words considered indecent, such as curse words and sexual slang. Pages with only very occasional usage, such as news sites that might include such words in a quotation, are not included.", - "Deprecated: This sensitive category is no longer supported. Contains content related to alcoholic beverages, alcohol brands, recipes, etc.", - "Deprecated: This sensitive category is no longer supported. Contains content related to the recreational use of legal or illegal drugs, as well as to drug paraphernalia or cultivation.", - "Deprecated: This sensitive category is no longer supported. Contains content related to tobacco and tobacco accessories, including lighters, humidors, ashtrays, etc.", - "Deprecated: This sensitive category is no longer supported. Political news and media, including discussions of social, governmental, and public policy.", - "Deprecated: This sensitive category is no longer supported. Content related to religious thought or beliefs.", - "Deprecated: This sensitive category is no longer supported. Content related to death, disasters, accidents, war, etc.", - "Deprecated: This sensitive category is no longer supported. Content related to motor vehicle, aviation or other transportation accidents.", - "Deprecated: This sensitive category is no longer supported. Issues that evoke strong, opposing views and spark debate. These include issues that are controversial in most countries and markets (such as abortion), as well as those that are controversial in specific countries and markets (such as immigration reform in the United States).", - "Deprecated: This sensitive category is no longer supported. Content which may be considered shocking or disturbing, such as violent news stories, stunts, or toilet humor.", "YouTube videos embedded on websites outside of YouTube.com.", "Video of live events streamed over the internet." ], @@ -21423,6 +21146,7 @@ "TARGETING_TYPE_ON_SCREEN_POSITION", "TARGETING_TYPE_THIRD_PARTY_VERIFIER", "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", "TARGETING_TYPE_ENVIRONMENT", "TARGETING_TYPE_CARRIER_AND_ISP", "TARGETING_TYPE_OPERATING_SYSTEM", @@ -21474,6 +21198,7 @@ "Target ads in a specific on screen position.", "Filter web sites through third party verification (for example, IAS or DoubleVerify).", "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", "Target ads to a specific environment (for example, web or app).", "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", "Target ads to a specific operating system (for example, macOS).", @@ -22060,6 +21785,10 @@ }, "type": "array" }, + "businessName": { + "description": "Optional. The business name shown on the ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied.", + "type": "string" + }, "companionBanners": { "description": "Optional. The list of companion banners used by this ad.", "items": { @@ -22105,6 +21834,10 @@ }, "type": "array" }, + "logo": { + "$ref": "ImageAsset", + "description": "Optional. The logo image used by this ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied." + }, "longHeadlines": { "description": "Optional. The list of long headlines shown on the call-to-action banner. Must be set unless the parent line item's lineItemType is `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE`, in which case this field cannot be set.", "items": { diff --git a/discovery/displayvideo-v4.json b/discovery/displayvideo-v4.json index 3668936f20..3ccc2cd597 100644 --- a/discovery/displayvideo-v4.json +++ b/discovery/displayvideo-v4.json @@ -1106,7 +1106,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -1266,7 +1266,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -1423,7 +1423,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -1593,7 +1593,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3456,7 +3456,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3616,7 +3616,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3773,7 +3773,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -3943,7 +3943,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items)", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -5216,7 +5216,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -5367,7 +5367,7 @@ "type": "string" }, "targetingType": { - "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -9025,7 +9025,7 @@ "type": "string" }, "targetingType": { - "description": "Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", + "description": "Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -9183,7 +9183,7 @@ "type": "string" }, "targetingType": { - "description": "Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", + "description": "Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID`", "enum": [ "TARGETING_TYPE_UNSPECIFIED", "TARGETING_TYPE_CHANNEL", @@ -9618,7 +9618,7 @@ } } }, - "revision": "20261012", + "revision": "20261021", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActiveViewVideoViewabilityMetricConfig": { @@ -12438,7 +12438,7 @@ }, "inventorySourceDetails": { "$ref": "InventorySourceAssignedTargetingOptionDetails", - "description": "Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`." + "description": "Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`." }, "inventorySourceGroupDetails": { "$ref": "InventorySourceGroupAssignedTargetingOptionDetails", @@ -13071,14 +13071,14 @@ "type": "array" }, "createRequests": { - "description": "Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "description": "Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -13125,14 +13125,14 @@ "id": "BulkEditAdvertiserAssignedTargetingOptionsRequest", "properties": { "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD`", + "description": "The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -13240,14 +13240,14 @@ "id": "BulkEditAssignedTargetingOptionsRequest", "properties": { "createRequests": { - "description": "The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "items": { "$ref": "CreateAssignedTargetingOptionsRequest" }, "type": "array" }, "deleteRequests": { - "description": "The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", + "description": "The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY`", "items": { "$ref": "DeleteAssignedTargetingOptionsRequest" }, @@ -15006,21 +15006,21 @@ ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", + "Deprecated: This SDF version is no longer supported. SDF version 3.1", + "Deprecated: This SDF version is no longer supported. SDF version 4", + "Deprecated: This SDF version is no longer supported. SDF version 4.1", + "Deprecated: This SDF version is no longer supported. SDF version 4.2", + "Deprecated: This SDF version is no longer supported. SDF version 5.", + "Deprecated: This SDF version is no longer supported. SDF version 5.1", + "Deprecated: This SDF version is no longer supported. SDF version 5.2", + "Deprecated: This SDF version is no longer supported. SDF version 5.3", + "Deprecated: This SDF version is no longer supported. SDF version 5.4", + "Deprecated: This SDF version is no longer supported. SDF version 5.5", + "Deprecated: This SDF version is no longer supported. SDF version 6", + "Deprecated: This SDF version is no longer supported. SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -16643,8 +16643,9 @@ "type": "string" }, "youtubeAndPartnersBidMultiplier": { - "description": "Optional. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items.", + "description": "Output only. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items.", "format": "double", + "readOnly": true, "type": "number" } }, @@ -19012,8 +19013,8 @@ "Default value when type is not specified or is unknown.", "Affinity type Google audience.", "In-Market type Google audience.", - "Installed-Apps type Google audience.", - "New-Mobile-Devices type Google audience.", + "Deprecated: This Google audience type is no longer supported. Installed-Apps type Google audience.", + "Deprecated: This Google audience type is no longer supported. New-Mobile-Devices type Google audience.", "Life-Event type Google audience.", "Extended-Demographic type Google audience." ], @@ -19637,7 +19638,7 @@ "type": "string" }, "optimizationObjective": { - "description": "Optional. Required. The optimization objective of the insertion order.", + "description": "Required. The optimization objective of the insertion order.", "enum": [ "OPTIMIZATION_OBJECTIVE_UNSPECIFIED", "CONVERSION", @@ -20379,7 +20380,7 @@ "type": "object" }, "InventorySourceAssignedTargetingOptionDetails": { - "description": "Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is one of `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`.", + "description": "Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`.", "id": "InventorySourceAssignedTargetingOptionDetails", "properties": { "inventorySourceId": { @@ -22721,7 +22722,7 @@ "type": "string" }, "invoiceType": { - "description": "The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_ADLOOX` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types.", + "description": "The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_PEER39` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types.", "enum": [ "PARTNER_COST_INVOICE_TYPE_UNSPECIFIED", "PARTNER_COST_INVOICE_TYPE_DV360", @@ -24072,21 +24073,21 @@ ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", + "Deprecated: This SDF version is no longer supported. SDF version 3.1", + "Deprecated: This SDF version is no longer supported. SDF version 4", + "Deprecated: This SDF version is no longer supported. SDF version 4.1", + "Deprecated: This SDF version is no longer supported. SDF version 4.2", + "Deprecated: This SDF version is no longer supported. SDF version 5.", + "Deprecated: This SDF version is no longer supported. SDF version 5.1", + "Deprecated: This SDF version is no longer supported. SDF version 5.2", + "Deprecated: This SDF version is no longer supported. SDF version 5.3", + "Deprecated: This SDF version is no longer supported. SDF version 5.4", + "Deprecated: This SDF version is no longer supported. SDF version 5.5", + "Deprecated: This SDF version is no longer supported. SDF version 6", + "Deprecated: This SDF version is no longer supported. SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -24173,21 +24174,21 @@ ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", - "SDF version 3.1", - "SDF version 4", - "SDF version 4.1", - "SDF version 4.2", - "SDF version 5.", - "SDF version 5.1", - "SDF version 5.2", - "SDF version 5.3", - "SDF version 5.4", - "SDF version 5.5", - "SDF version 6", - "SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", - "SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", - "SDF version 8.1.", + "Deprecated: This SDF version is no longer supported. SDF version 3.1", + "Deprecated: This SDF version is no longer supported. SDF version 4", + "Deprecated: This SDF version is no longer supported. SDF version 4.1", + "Deprecated: This SDF version is no longer supported. SDF version 4.2", + "Deprecated: This SDF version is no longer supported. SDF version 5.", + "Deprecated: This SDF version is no longer supported. SDF version 5.1", + "Deprecated: This SDF version is no longer supported. SDF version 5.2", + "Deprecated: This SDF version is no longer supported. SDF version 5.3", + "Deprecated: This SDF version is no longer supported. SDF version 5.4", + "Deprecated: This SDF version is no longer supported. SDF version 5.5", + "Deprecated: This SDF version is no longer supported. SDF version 6", + "Deprecated: This SDF version is no longer supported. SDF version 7. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 7.1. Read the [v7 migration guide](/display-video/api/structured-data-file/v7-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 8. Read the [v8 migration guide](/display-video/api/structured-data-file/v8-migration-guide) before migrating to this version.", + "Deprecated: This SDF version is no longer supported. SDF version 8.1.", "SDF version 9. Read the [v9 migration guide](/display-video/api/structured-data-file/v9-migration-guide) before migrating to this version.", "SDF version 9.1.", "SDF version 9.2.", @@ -25781,6 +25782,10 @@ }, "type": "array" }, + "businessName": { + "description": "Optional. The business name shown on the ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied.", + "type": "string" + }, "companionBanners": { "description": "Optional. The list of companion banners used by this ad.", "items": { @@ -25826,6 +25831,10 @@ }, "type": "array" }, + "logo": { + "$ref": "ImageAsset", + "description": "Optional. The logo image used by this ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied." + }, "longHeadlines": { "description": "Optional. The list of long headlines shown on the call-to-action banner. Must be set unless the parent line item's lineItemType is `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE`, in which case this field cannot be set.", "items": { diff --git a/discovery/displayvideo-v5.json b/discovery/displayvideo-v5.json new file mode 100644 index 0000000000..aaaae9fec0 --- /dev/null +++ b/discovery/displayvideo-v5.json @@ -0,0 +1,333 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/display-video": { + "description": "Create, see, edit, and permanently delete your Display & Video 360 entities and reports" + }, + "https://www.googleapis.com/auth/doubleclickbidmanager": { + "description": "View and manage your reports in DoubleClick Bid Manager" + } + } + } + }, + "basePath": "", + "baseUrl": "https://displayvideo.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Display Video", + "description": "Display & Video 360 API allows users to automate complex Display & Video 360 workflows, such as creating insertion orders and setting targeting options for individual line items.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/display-video/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "displayvideo:v5", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://displayvideo.mtls.googleapis.com/", + "name": "displayvideo", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "media": { + "methods": { + "download": { + "description": "Downloads media. Download is supported on the URI `/download/{resource_name=**}?alt=media.` **Note**: Download requests will not be successful without including `alt=media` query string.", + "flatPath": "download/{downloadId}", + "httpMethod": "GET", + "id": "displayvideo.media.download", + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "resourceName": { + "description": "Name of the media that is being downloaded. See ReadRequest.resource_name.", + "location": "path", + "pattern": "^.*$", + "required": true, + "type": "string" + } + }, + "path": "download/{+resourceName}", + "response": { + "$ref": "GoogleBytestreamMedia" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video", + "https://www.googleapis.com/auth/doubleclickbidmanager" + ], + "supportsMediaDownload": true + }, + "upload": { + "description": "Uploads media. Upload is supported on the URI `/upload/media/{resource_name=**}?upload_type=media.` **Note**: Upload requests will not be successful without including `upload_type=media` query string.", + "flatPath": "media/{mediaId}", + "httpMethod": "POST", + "id": "displayvideo.media.upload", + "mediaUpload": { + "accept": [ + "*/*" + ], + "protocols": { + "simple": { + "multipart": true, + "path": "/upload/media/{+resourceName}" + } + } + }, + "parameterOrder": [ + "resourceName" + ], + "parameters": { + "resourceName": { + "description": "Name of the media that is being downloaded. See ReadRequest.resource_name.", + "location": "path", + "pattern": "^.*$", + "required": true, + "type": "string" + } + }, + "path": "media/{+resourceName}", + "request": { + "$ref": "GoogleBytestreamMedia" + }, + "response": { + "$ref": "GoogleBytestreamMedia" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video", + "https://www.googleapis.com/auth/doubleclickbidmanager" + ], + "supportsMediaUpload": true + } + } + }, + "sdfdownloadtasks": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of an asynchronous SDF download task operation. Clients should poll this method at intervals of 30 seconds.", + "flatPath": "v5/sdfdownloadtasks/operations/{operationsId}", + "httpMethod": "GET", + "id": "displayvideo.sdfdownloadtasks.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^sdfdownloadtasks/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v5/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video", + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + } + } + } + } + }, + "sdfuploadtasks": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of an asynchronous SDF download task operation. Clients should poll this method at intervals of 30 seconds.", + "flatPath": "v5/sdfuploadtasks/operations/{operationsId}", + "httpMethod": "GET", + "id": "displayvideo.sdfuploadtasks.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^sdfuploadtasks/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v5/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video", + "https://www.googleapis.com/auth/doubleclickbidmanager" + ] + } + } + } + } + } + }, + "revision": "20261019", + "rootUrl": "https://displayvideo.googleapis.com/", + "schemas": { + "GoogleBytestreamMedia": { + "description": "Media resource.", + "id": "GoogleBytestreamMedia", + "properties": { + "resourceName": { + "description": "Name of the media resource.", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Display & Video 360 API", + "version": "v5", + "version_module": true +} \ No newline at end of file diff --git a/discovery/fcm-v1.json b/discovery/fcm-v1.json index 47f9c5093c..e20fe39f06 100644 --- a/discovery/fcm-v1.json +++ b/discovery/fcm-v1.json @@ -316,11 +316,11 @@ } } }, - "revision": "20261013", + "revision": "20261018", "rootUrl": "https://fcm.googleapis.com/", "schemas": { "AndroidBackgroundSyncMessage": { - "description": "A Background Sync message that is sent to an Android device.", + "description": "A Background Sync message that is sent to Android devices.", "id": "AndroidBackgroundSyncMessage", "properties": {}, "type": "object" @@ -390,7 +390,7 @@ "properties": { "backgroundSync": { "$ref": "AndroidBackgroundSyncMessage", - "description": "Optional. Non-urgent background sync message to send to android devices." + "description": "Optional. Non-urgent background sync message to send to Android devices. Delivery of these messages may be delayed or batched to optimize for battery." }, "bandwidthConstrainedOk": { "description": "Optional. If set to true, messages will be allowed to be delivered to the app while the device is in bandwidth constrained mode. This should only be enabled when the app has been tested to properly handle messages in bandwidth constrained mode.", @@ -417,7 +417,7 @@ }, "remoteNotification": { "$ref": "AndroidRemoteNotification", - "description": "Optional. User-facing notification to send to android devices." + "description": "Optional. User-facing notification to send to Android devices. These messages are delivered immediately and are not delayed by battery optimizations." }, "restrictedPackageName": { "description": "Package name of the application where the registration token must match in order to receive the message.", @@ -672,7 +672,7 @@ "type": "integer" }, "image": { - "description": "Contains the URL of an image that is going to be displayed in a notification. If present, it will override google.firebase.fcm.v1.Notification.image.", + "description": "An HTTPS URL of an image to display in the notification. If present, it overrides google.firebase.fcm.v1.Notification.image.", "type": "string" }, "lightSettings": { @@ -767,7 +767,7 @@ "type": "object" }, "AndroidRemoteNotification": { - "description": "A Remote Notification message that is sent to an Android device.", + "description": "A Remote Notification message that is sent to Android devices.", "id": "AndroidRemoteNotification", "properties": { "mutableContent": { diff --git a/discovery/gkehub-v1.json b/discovery/gkehub-v1.json index 5c1ec407a8..4128f2bd30 100644 --- a/discovery/gkehub-v1.json +++ b/discovery/gkehub-v1.json @@ -2596,7 +2596,7 @@ } } }, - "revision": "20261008", + "revision": "20261017", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -7491,6 +7491,7 @@ "MODERNIZATION_INCOMPATIBLE_POD_ANNOTATION", "MODERNIZATION_INCOMPATIBLE_CONFIG", "MODERNIZATION_INCOMPATIBLE_GATEWAY_POD_SCALE", + "MODERNIZATION_REQUIRES_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_SCHEDULED", "MODERNIZATION_IN_PROGRESS", "MODERNIZATION_COMPLETED", @@ -7500,6 +7501,7 @@ "MODERNIZATION_PREPARED", "MODERNIZATION_MIGRATING_WORKLOADS", "MODERNIZATION_ROLLING_BACK_CLUSTER", + "MODERNIZATION_AWAITING_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_WILL_BE_SCHEDULED", "MODERNIZATION_MANUAL", "MODERNIZATION_ELIGIBLE", @@ -7508,6 +7510,7 @@ "MODERNIZATION_FINALIZED", "MODERNIZATION_ROLLING_BACK_FLEET", "MODERNIZATION_MODERNIZED", + "MODERNIZATION_REQUIRES_CUSTOMER_TRIGGER", "MODERNIZATION_COMPATIBLE", "MODERNIZATION_INCOMPATIBLE", "MODERNIZATION_INCOMPATIBLE_FLEET_SCALE", @@ -7558,6 +7561,7 @@ "One or more Pods have unsupported annotations.", "Incompatible config found in the cluster.", "Gateway pods per cluster limit exceeded.", + "Cluster contains workloads that will require manual restart during modernization.", "Modernization is scheduled for a cluster.", "Modernization is in progress for a cluster.", "Modernization is completed for a cluster.", @@ -7567,6 +7571,7 @@ "Cluster has been prepared for its workloads to be migrated.", "Migrating the cluster's workloads to the new implementation.", "Rollback is in progress for modernization of a cluster.", + "Modernization of a cluster is awaiting manual restart of workloads. The customer must restart these workloads to complete modernization.", "Modernization will be scheduled for a fleet.", "Fleet is opted out from automated modernization.", "Fleet is eligible for modernization.", @@ -7575,6 +7580,7 @@ "Modernization is finalized for all clusters in a fleet. Rollback is no longer allowed.", "Rollback is in progress for modernization of all clusters in a fleet.", "Modernization of all the fleet's clusters is complete. Soaking before finalizing the modernization.", + "Fleet modernization must be Customer-Triggered, and cannot be Google-driven. Specific details may be reported via another fleet/cluster condition.", "Fleet is compatible for modernization.", "Fleet is not yet compatible for modernization.", "Fleet exceeds service mesh fleet-level scalability limits.", @@ -7757,6 +7763,7 @@ "MODERNIZATION_INCOMPATIBLE_POD_ANNOTATION", "MODERNIZATION_INCOMPATIBLE_CONFIG", "MODERNIZATION_INCOMPATIBLE_GATEWAY_POD_SCALE", + "MODERNIZATION_REQUIRES_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_SCHEDULED", "MODERNIZATION_IN_PROGRESS", "MODERNIZATION_COMPLETED", @@ -7766,6 +7773,7 @@ "MODERNIZATION_PREPARED", "MODERNIZATION_MIGRATING_WORKLOADS", "MODERNIZATION_ROLLING_BACK_CLUSTER", + "MODERNIZATION_AWAITING_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_WILL_BE_SCHEDULED", "MODERNIZATION_MANUAL", "MODERNIZATION_ELIGIBLE", @@ -7774,6 +7782,7 @@ "MODERNIZATION_FINALIZED", "MODERNIZATION_ROLLING_BACK_FLEET", "MODERNIZATION_MODERNIZED", + "MODERNIZATION_REQUIRES_CUSTOMER_TRIGGER", "MODERNIZATION_COMPATIBLE", "MODERNIZATION_INCOMPATIBLE", "MODERNIZATION_INCOMPATIBLE_FLEET_SCALE", @@ -7824,6 +7833,7 @@ "One or more Pods have unsupported annotations.", "Incompatible config found in the cluster.", "Gateway pods per cluster limit exceeded.", + "Cluster contains workloads that will require manual restart during modernization.", "Modernization is scheduled for a cluster.", "Modernization is in progress for a cluster.", "Modernization is completed for a cluster.", @@ -7833,6 +7843,7 @@ "Cluster has been prepared for its workloads to be migrated.", "Migrating the cluster's workloads to the new implementation.", "Rollback is in progress for modernization of a cluster.", + "Modernization of a cluster is awaiting manual restart of workloads. The customer must restart these workloads to complete modernization.", "Modernization will be scheduled for a fleet.", "Fleet is opted out from automated modernization.", "Fleet is eligible for modernization.", @@ -7841,6 +7852,7 @@ "Modernization is finalized for all clusters in a fleet. Rollback is no longer allowed.", "Rollback is in progress for modernization of all clusters in a fleet.", "Modernization of all clusters in the fleet is complete. Soaking before finalizing the modernization.", + "Fleet modernization must be Customer-Triggered, and cannot be Google-driven. Specific details may be reported via another fleet/cluster condition.", "Fleet is compatible for modernization.", "Fleet is not yet compatible for modernization.", "Fleet exceeds service mesh fleet-level scalability limits.", diff --git a/discovery/gkehub-v1alpha.json b/discovery/gkehub-v1alpha.json index de85ed9563..b37b922b62 100644 --- a/discovery/gkehub-v1alpha.json +++ b/discovery/gkehub-v1alpha.json @@ -2740,7 +2740,7 @@ } } }, - "revision": "20261008", + "revision": "20261017", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -8074,6 +8074,7 @@ "MODERNIZATION_INCOMPATIBLE_POD_ANNOTATION", "MODERNIZATION_INCOMPATIBLE_CONFIG", "MODERNIZATION_INCOMPATIBLE_GATEWAY_POD_SCALE", + "MODERNIZATION_REQUIRES_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_SCHEDULED", "MODERNIZATION_IN_PROGRESS", "MODERNIZATION_COMPLETED", @@ -8083,6 +8084,7 @@ "MODERNIZATION_PREPARED", "MODERNIZATION_MIGRATING_WORKLOADS", "MODERNIZATION_ROLLING_BACK_CLUSTER", + "MODERNIZATION_AWAITING_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_WILL_BE_SCHEDULED", "MODERNIZATION_MANUAL", "MODERNIZATION_ELIGIBLE", @@ -8091,6 +8093,7 @@ "MODERNIZATION_FINALIZED", "MODERNIZATION_ROLLING_BACK_FLEET", "MODERNIZATION_MODERNIZED", + "MODERNIZATION_REQUIRES_CUSTOMER_TRIGGER", "MODERNIZATION_COMPATIBLE", "MODERNIZATION_INCOMPATIBLE", "MODERNIZATION_INCOMPATIBLE_FLEET_SCALE", @@ -8141,6 +8144,7 @@ "One or more Pods have unsupported annotations.", "Incompatible config found in the cluster.", "Gateway pods per cluster limit exceeded.", + "Cluster contains workloads that will require manual restart during modernization.", "Modernization is scheduled for a cluster.", "Modernization is in progress for a cluster.", "Modernization is completed for a cluster.", @@ -8150,6 +8154,7 @@ "Cluster has been prepared for its workloads to be migrated.", "Migrating the cluster's workloads to the new implementation.", "Rollback is in progress for modernization of a cluster.", + "Modernization of a cluster is awaiting manual restart of workloads. The customer must restart these workloads to complete modernization.", "Modernization will be scheduled for a fleet.", "Fleet is opted out from automated modernization.", "Fleet is eligible for modernization.", @@ -8158,6 +8163,7 @@ "Modernization is finalized for all clusters in a fleet. Rollback is no longer allowed.", "Rollback is in progress for modernization of all clusters in a fleet.", "Modernization of all the fleet's clusters is complete. Soaking before finalizing the modernization.", + "Fleet modernization must be Customer-Triggered, and cannot be Google-driven. Specific details may be reported via another fleet/cluster condition.", "Fleet is compatible for modernization.", "Fleet is not yet compatible for modernization.", "Fleet exceeds service mesh fleet-level scalability limits.", @@ -8340,6 +8346,7 @@ "MODERNIZATION_INCOMPATIBLE_POD_ANNOTATION", "MODERNIZATION_INCOMPATIBLE_CONFIG", "MODERNIZATION_INCOMPATIBLE_GATEWAY_POD_SCALE", + "MODERNIZATION_REQUIRES_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_SCHEDULED", "MODERNIZATION_IN_PROGRESS", "MODERNIZATION_COMPLETED", @@ -8349,6 +8356,7 @@ "MODERNIZATION_PREPARED", "MODERNIZATION_MIGRATING_WORKLOADS", "MODERNIZATION_ROLLING_BACK_CLUSTER", + "MODERNIZATION_AWAITING_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_WILL_BE_SCHEDULED", "MODERNIZATION_MANUAL", "MODERNIZATION_ELIGIBLE", @@ -8357,6 +8365,7 @@ "MODERNIZATION_FINALIZED", "MODERNIZATION_ROLLING_BACK_FLEET", "MODERNIZATION_MODERNIZED", + "MODERNIZATION_REQUIRES_CUSTOMER_TRIGGER", "MODERNIZATION_COMPATIBLE", "MODERNIZATION_INCOMPATIBLE", "MODERNIZATION_INCOMPATIBLE_FLEET_SCALE", @@ -8407,6 +8416,7 @@ "One or more Pods have unsupported annotations.", "Incompatible config found in the cluster.", "Gateway pods per cluster limit exceeded.", + "Cluster contains workloads that will require manual restart during modernization.", "Modernization is scheduled for a cluster.", "Modernization is in progress for a cluster.", "Modernization is completed for a cluster.", @@ -8416,6 +8426,7 @@ "Cluster has been prepared for its workloads to be migrated.", "Migrating the cluster's workloads to the new implementation.", "Rollback is in progress for modernization of a cluster.", + "Modernization of a cluster is awaiting manual restart of workloads. The customer must restart these workloads to complete modernization.", "Modernization will be scheduled for a fleet.", "Fleet is opted out from automated modernization.", "Fleet is eligible for modernization.", @@ -8424,6 +8435,7 @@ "Modernization is finalized for all clusters in a fleet. Rollback is no longer allowed.", "Rollback is in progress for modernization of all clusters in a fleet.", "Modernization of all clusters in the fleet is complete. Soaking before finalizing the modernization.", + "Fleet modernization must be Customer-Triggered, and cannot be Google-driven. Specific details may be reported via another fleet/cluster condition.", "Fleet is compatible for modernization.", "Fleet is not yet compatible for modernization.", "Fleet exceeds service mesh fleet-level scalability limits.", diff --git a/discovery/gkehub-v1beta.json b/discovery/gkehub-v1beta.json index 6462e20a36..4583c64ce4 100644 --- a/discovery/gkehub-v1beta.json +++ b/discovery/gkehub-v1beta.json @@ -2596,7 +2596,7 @@ } } }, - "revision": "20261008", + "revision": "20261017", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -7617,6 +7617,7 @@ "MODERNIZATION_INCOMPATIBLE_POD_ANNOTATION", "MODERNIZATION_INCOMPATIBLE_CONFIG", "MODERNIZATION_INCOMPATIBLE_GATEWAY_POD_SCALE", + "MODERNIZATION_REQUIRES_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_SCHEDULED", "MODERNIZATION_IN_PROGRESS", "MODERNIZATION_COMPLETED", @@ -7626,6 +7627,7 @@ "MODERNIZATION_PREPARED", "MODERNIZATION_MIGRATING_WORKLOADS", "MODERNIZATION_ROLLING_BACK_CLUSTER", + "MODERNIZATION_AWAITING_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_WILL_BE_SCHEDULED", "MODERNIZATION_MANUAL", "MODERNIZATION_ELIGIBLE", @@ -7634,6 +7636,7 @@ "MODERNIZATION_FINALIZED", "MODERNIZATION_ROLLING_BACK_FLEET", "MODERNIZATION_MODERNIZED", + "MODERNIZATION_REQUIRES_CUSTOMER_TRIGGER", "MODERNIZATION_COMPATIBLE", "MODERNIZATION_INCOMPATIBLE", "MODERNIZATION_INCOMPATIBLE_FLEET_SCALE", @@ -7684,6 +7687,7 @@ "One or more Pods have unsupported annotations.", "Incompatible config found in the cluster.", "Gateway pods per cluster limit exceeded.", + "Cluster contains workloads that will require manual restart during modernization.", "Modernization is scheduled for a cluster.", "Modernization is in progress for a cluster.", "Modernization is completed for a cluster.", @@ -7693,6 +7697,7 @@ "Cluster has been prepared for its workloads to be migrated.", "Migrating the cluster's workloads to the new implementation.", "Rollback is in progress for modernization of a cluster.", + "Modernization of a cluster is awaiting manual restart of workloads. The customer must restart these workloads to complete modernization.", "Modernization will be scheduled for a fleet.", "Fleet is opted out from automated modernization.", "Fleet is eligible for modernization.", @@ -7701,6 +7706,7 @@ "Modernization is finalized for all clusters in a fleet. Rollback is no longer allowed.", "Rollback is in progress for modernization of all clusters in a fleet.", "Modernization of all the fleet's clusters is complete. Soaking before finalizing the modernization.", + "Fleet modernization must be Customer-Triggered, and cannot be Google-driven. Specific details may be reported via another fleet/cluster condition.", "Fleet is compatible for modernization.", "Fleet is not yet compatible for modernization.", "Fleet exceeds service mesh fleet-level scalability limits.", @@ -7883,6 +7889,7 @@ "MODERNIZATION_INCOMPATIBLE_POD_ANNOTATION", "MODERNIZATION_INCOMPATIBLE_CONFIG", "MODERNIZATION_INCOMPATIBLE_GATEWAY_POD_SCALE", + "MODERNIZATION_REQUIRES_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_SCHEDULED", "MODERNIZATION_IN_PROGRESS", "MODERNIZATION_COMPLETED", @@ -7892,6 +7899,7 @@ "MODERNIZATION_PREPARED", "MODERNIZATION_MIGRATING_WORKLOADS", "MODERNIZATION_ROLLING_BACK_CLUSTER", + "MODERNIZATION_AWAITING_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_WILL_BE_SCHEDULED", "MODERNIZATION_MANUAL", "MODERNIZATION_ELIGIBLE", @@ -7900,6 +7908,7 @@ "MODERNIZATION_FINALIZED", "MODERNIZATION_ROLLING_BACK_FLEET", "MODERNIZATION_MODERNIZED", + "MODERNIZATION_REQUIRES_CUSTOMER_TRIGGER", "MODERNIZATION_COMPATIBLE", "MODERNIZATION_INCOMPATIBLE", "MODERNIZATION_INCOMPATIBLE_FLEET_SCALE", @@ -7950,6 +7959,7 @@ "One or more Pods have unsupported annotations.", "Incompatible config found in the cluster.", "Gateway pods per cluster limit exceeded.", + "Cluster contains workloads that will require manual restart during modernization.", "Modernization is scheduled for a cluster.", "Modernization is in progress for a cluster.", "Modernization is completed for a cluster.", @@ -7959,6 +7969,7 @@ "Cluster has been prepared for its workloads to be migrated.", "Migrating the cluster's workloads to the new implementation.", "Rollback is in progress for modernization of a cluster.", + "Modernization of a cluster is awaiting manual restart of workloads. The customer must restart these workloads to complete modernization.", "Modernization will be scheduled for a fleet.", "Fleet is opted out from automated modernization.", "Fleet is eligible for modernization.", @@ -7967,6 +7978,7 @@ "Modernization is finalized for all clusters in a fleet. Rollback is no longer allowed.", "Rollback is in progress for modernization of all clusters in a fleet.", "Modernization of all clusters in the fleet is complete. Soaking before finalizing the modernization.", + "Fleet modernization must be Customer-Triggered, and cannot be Google-driven. Specific details may be reported via another fleet/cluster condition.", "Fleet is compatible for modernization.", "Fleet is not yet compatible for modernization.", "Fleet exceeds service mesh fleet-level scalability limits.", diff --git a/discovery/gkehub-v2.json b/discovery/gkehub-v2.json index 58d89925ab..62e6b08e54 100644 --- a/discovery/gkehub-v2.json +++ b/discovery/gkehub-v2.json @@ -554,7 +554,7 @@ } } }, - "revision": "20261008", + "revision": "20261017", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -3160,6 +3160,7 @@ "MODERNIZATION_INCOMPATIBLE_POD_ANNOTATION", "MODERNIZATION_INCOMPATIBLE_CONFIG", "MODERNIZATION_INCOMPATIBLE_GATEWAY_POD_SCALE", + "MODERNIZATION_REQUIRES_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_SCHEDULED", "MODERNIZATION_IN_PROGRESS", "MODERNIZATION_COMPLETED", @@ -3169,6 +3170,7 @@ "MODERNIZATION_PREPARED", "MODERNIZATION_MIGRATING_WORKLOADS", "MODERNIZATION_ROLLING_BACK_CLUSTER", + "MODERNIZATION_AWAITING_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_WILL_BE_SCHEDULED", "MODERNIZATION_MANUAL", "MODERNIZATION_ELIGIBLE", @@ -3177,6 +3179,7 @@ "MODERNIZATION_FINALIZED", "MODERNIZATION_ROLLING_BACK_FLEET", "MODERNIZATION_MODERNIZED", + "MODERNIZATION_REQUIRES_CUSTOMER_TRIGGER", "MODERNIZATION_COMPATIBLE", "MODERNIZATION_INCOMPATIBLE", "MODERNIZATION_INCOMPATIBLE_FLEET_SCALE", @@ -3227,6 +3230,7 @@ "One or more Pods have unsupported annotations.", "Incompatible config found in the cluster.", "Gateway pods per cluster limit exceeded.", + "Cluster contains workloads that will require manual restart during modernization.", "Modernization is scheduled for a cluster.", "Modernization is in progress for a cluster.", "Modernization is completed for a cluster.", @@ -3236,6 +3240,7 @@ "Cluster has been prepared for its workloads to be migrated.", "Migrating the cluster's workloads to the new implementation.", "Rollback is in progress for modernization of a cluster.", + "Modernization of a cluster is awaiting manual restart of workloads. The customer must restart these workloads to complete modernization.", "Modernization will be scheduled for a fleet.", "Fleet is opted out from automated modernization.", "Fleet is eligible for modernization.", @@ -3244,6 +3249,7 @@ "Modernization is finalized for all clusters in a fleet. Rollback is no longer allowed.", "Rollback is in progress for modernization of all clusters in a fleet.", "Modernization of all the fleet's clusters is complete. Soaking before finalizing the modernization.", + "Fleet modernization must be Customer-Triggered, and cannot be Google-driven. Specific details may be reported via another fleet/cluster condition.", "Fleet is compatible for modernization.", "Fleet is not yet compatible for modernization.", "Fleet exceeds service mesh fleet-level scalability limits.", diff --git a/discovery/gkehub-v2alpha.json b/discovery/gkehub-v2alpha.json index fc702700da..9321e748af 100644 --- a/discovery/gkehub-v2alpha.json +++ b/discovery/gkehub-v2alpha.json @@ -554,7 +554,7 @@ } } }, - "revision": "20261008", + "revision": "20261017", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceState": { @@ -3160,6 +3160,7 @@ "MODERNIZATION_INCOMPATIBLE_POD_ANNOTATION", "MODERNIZATION_INCOMPATIBLE_CONFIG", "MODERNIZATION_INCOMPATIBLE_GATEWAY_POD_SCALE", + "MODERNIZATION_REQUIRES_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_SCHEDULED", "MODERNIZATION_IN_PROGRESS", "MODERNIZATION_COMPLETED", @@ -3169,6 +3170,7 @@ "MODERNIZATION_PREPARED", "MODERNIZATION_MIGRATING_WORKLOADS", "MODERNIZATION_ROLLING_BACK_CLUSTER", + "MODERNIZATION_AWAITING_MANUAL_WORKLOAD_RESTART", "MODERNIZATION_WILL_BE_SCHEDULED", "MODERNIZATION_MANUAL", "MODERNIZATION_ELIGIBLE", @@ -3177,6 +3179,7 @@ "MODERNIZATION_FINALIZED", "MODERNIZATION_ROLLING_BACK_FLEET", "MODERNIZATION_MODERNIZED", + "MODERNIZATION_REQUIRES_CUSTOMER_TRIGGER", "MODERNIZATION_COMPATIBLE", "MODERNIZATION_INCOMPATIBLE", "MODERNIZATION_INCOMPATIBLE_FLEET_SCALE", @@ -3227,6 +3230,7 @@ "One or more Pods have unsupported annotations.", "Incompatible config found in the cluster.", "Gateway pods per cluster limit exceeded.", + "Cluster contains workloads that will require manual restart during modernization.", "Modernization is scheduled for a cluster.", "Modernization is in progress for a cluster.", "Modernization is completed for a cluster.", @@ -3236,6 +3240,7 @@ "Cluster has been prepared for its workloads to be migrated.", "Migrating the cluster's workloads to the new implementation.", "Rollback is in progress for modernization of a cluster.", + "Modernization of a cluster is awaiting manual restart of workloads. The customer must restart these workloads to complete modernization.", "Modernization will be scheduled for a fleet.", "Fleet is opted out from automated modernization.", "Fleet is eligible for modernization.", @@ -3244,6 +3249,7 @@ "Modernization is finalized for all clusters in a fleet. Rollback is no longer allowed.", "Rollback is in progress for modernization of all clusters in a fleet.", "Modernization of all the fleet's clusters is complete. Soaking before finalizing the modernization.", + "Fleet modernization must be Customer-Triggered, and cannot be Google-driven. Specific details may be reported via another fleet/cluster condition.", "Fleet is compatible for modernization.", "Fleet is not yet compatible for modernization.", "Fleet exceeds service mesh fleet-level scalability limits.", diff --git a/discovery/homegraph-v1.json b/discovery/homegraph-v1.json index 1e255a352d..658bfb954a 100644 --- a/discovery/homegraph-v1.json +++ b/discovery/homegraph-v1.json @@ -216,7 +216,7 @@ } } }, - "revision": "20260821", + "revision": "20261020", "rootUrl": "https://homegraph.googleapis.com/", "schemas": { "AgentDeviceId": { @@ -695,6 +695,25 @@ }, "type": "object" }, + "JsonTrait": { + "description": "Dynamic JSON trait state payload conforming to `json_trait_schema.md`. Used for Category 2 (vendor Matter clusters) and Category 3 (non-Matter capabilities) traits across all wire and internal paths, and for Category 1 traits on external JSON-only wire paths (e.g., `Query` with `JSON_TRAIT_ONLY`).", + "id": "JsonTrait", + "properties": { + "data": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. Trait attribute map conforming to the trait's registered JSON Schema.", + "type": "object" + }, + "id": { + "description": "Required. Canonical symbolic trait ID per `json_trait_schema.md`: - Standard Matter (Cat 1): `matter.` (e.g., `matter.thermostat`) - Google / vendor Matter (Cat 1/2): `matter..` (e.g., `matter.google.`, `matter.eve.utility`) - Non-Matter (Cat 3, any provider incl. Google): `ghp..` (e.g., `ghp.acme.warranty`, `ghp.google.`)", + "type": "string" + } + }, + "type": "object" + }, "MediaUrlsStruct": { "id": "MediaUrlsStruct", "properties": { @@ -1137,6 +1156,10 @@ "format": "google-datetime", "type": "string" }, + "jsonTrait": { + "$ref": "JsonTrait", + "description": "Contains the dynamic JSON trait payload." + }, "providerUpdateTime": { "description": "The custom timestamp supplied by the provider during a ReportStateAndNotification update (if provided). This field is returned as part of the `QueryResponse`.", "format": "google-datetime", diff --git a/discovery/index.json b/discovery/index.json index 63aa0af153..b1460e7052 100644 --- a/discovery/index.json +++ b/discovery/index.json @@ -2823,9 +2823,9 @@ "version": "v1" }, { - "description": "Deep Review API for automated conference-quality scientific paper reviews.", + "description": "Deep Review API for automated, in-depth document reviews.", "discoveryRestUrl": "https://deepreview.googleapis.com/$discovery/rest?version=v1", - "documentationLink": "https://research.google/", + "documentationLink": "https://research.google/deepreview", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" @@ -3148,10 +3148,25 @@ "id": "displayvideo:v4", "kind": "discovery#directoryItem", "name": "displayvideo", - "preferred": true, + "preferred": false, "title": "Display & Video 360 API", "version": "v4" }, + { + "description": "Display & Video 360 API allows users to automate complex Display & Video 360 workflows, such as creating insertion orders and setting targeting options for individual line items.", + "discoveryRestUrl": "https://displayvideo.googleapis.com/$discovery/rest?version=v5", + "documentationLink": "https://developers.google.com/display-video/", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "id": "displayvideo:v5", + "kind": "discovery#directoryItem", + "name": "displayvideo", + "preferred": true, + "title": "Display & Video 360 API", + "version": "v5" + }, { "description": "Discover and protect your sensitive data. A fully managed service designed to help you discover, classify, and protect your valuable data assets with ease.", "discoveryRestUrl": "https://dlp.googleapis.com/$discovery/rest?version=v2", diff --git a/discovery/looker-v1.json b/discovery/looker-v1.json index fde80d2503..dd7af528e5 100644 --- a/discovery/looker-v1.json +++ b/discovery/looker-v1.json @@ -800,7 +800,7 @@ } } }, - "revision": "20260927", + "revision": "20261011", "rootUrl": "https://looker.googleapis.com/", "schemas": { "AdminSettings": { @@ -808,7 +808,7 @@ "id": "AdminSettings", "properties": { "allowedEmailDomains": { - "description": "Email domain allowlist for the instance.", + "description": "Optional. Email domain allowlist for the instance.", "items": { "type": "string" }, @@ -919,11 +919,11 @@ "id": "CustomDomain", "properties": { "domain": { - "description": "Domain name.", + "description": "Optional. Domain name.", "type": "string" }, "state": { - "description": "Domain state.", + "description": "Output only. Domain state.", "enum": [ "CUSTOM_DOMAIN_STATE_UNSPECIFIED", "UNVERIFIED", @@ -942,6 +942,7 @@ "ManagedCertificate is not ready.", "Status is not known." ], + "readOnly": true, "type": "string" } }, @@ -999,7 +1000,7 @@ "id": "EncryptionConfig", "properties": { "kmsKeyName": { - "description": "Name of the CMEK key in KMS (input parameter).", + "description": "Optional. Immutable. Name of the CMEK key in KMS (input parameter).", "type": "string" }, "kmsKeyNameVersion": { @@ -1067,6 +1068,10 @@ "$ref": "ExportMetrics", "description": "Overall export metrics, timing, and component telemetry." }, + "exportTime": { + "description": "A string of digits representing the number of microseconds since the Unix epoch when the export was created. Used to identify the cloned source Elite System Activity (ESA) BigQuery dataset for O2C direct dataset migration.", + "type": "string" + }, "filePaths": { "description": "List of files created as part of export artifact (excluding the metadata). The paths are relative to the folder containing the metadata.", "items": { @@ -1200,7 +1205,7 @@ }, "adminSettings": { "$ref": "AdminSettings", - "description": "Looker Instance Admin settings." + "description": "Optional. Looker Instance Admin settings." }, "authType": { "$ref": "AuthType", @@ -1225,7 +1230,7 @@ "type": "string" }, "consumerNetwork": { - "description": "Network name in the consumer project. Format: `projects/{project}/global/networks/{network}`. Note that the consumer network may be in a different GCP project than the consumer project that is hosting the Looker Instance.", + "description": "Optional. Network name in the consumer project. Format: `projects/{project}/global/networks/{network}`. Note that the consumer network may be in a different GCP project than the consumer project that is hosting the Looker Instance.", "type": "string" }, "controlledEgressConfig": { @@ -1244,11 +1249,11 @@ }, "customDomain": { "$ref": "CustomDomain", - "description": "Custom domain configuration for the instance." + "description": "Optional. Custom domain configuration for the instance." }, "denyMaintenancePeriod": { "$ref": "DenyMaintenancePeriod", - "description": "Maintenance denial period for this instance." + "description": "Optional. Maintenance denial period for this instance." }, "egressPublicIp": { "description": "Output only. Public Egress IP (IPv4).", @@ -1257,7 +1262,7 @@ }, "encryptionConfig": { "$ref": "EncryptionConfig", - "description": "Encryption configuration (CMEK). Only set if CMEK has been enabled on the instance." + "description": "Optional. Encryption configuration (CMEK). Only set if CMEK has been enabled on the instance." }, "fipsEnabled": { "description": "Optional. Whether FIPS is enabled on the Looker instance.", @@ -1303,11 +1308,12 @@ }, "maintenanceSchedule": { "$ref": "MaintenanceSchedule", - "description": "Maintenance schedule for this instance." + "description": "Output only. Maintenance schedule for this instance.", + "readOnly": true }, "maintenanceWindow": { "$ref": "MaintenanceWindow", - "description": "Maintenance window for this instance." + "description": "Optional. Maintenance window for this instance." }, "name": { "description": "Output only. Format: `projects/{project}/locations/{location}/instances/{instance}`.", @@ -1316,14 +1322,14 @@ }, "oauthConfig": { "$ref": "OAuthConfig", - "description": "Looker instance OAuth login settings." + "description": "Optional. Looker instance OAuth login settings." }, "periodicExportConfig": { "$ref": "PeriodicExportConfig", "description": "Optional. Configuration for periodic export." }, "platformEdition": { - "description": "Platform edition.", + "description": "Optional. Platform edition. Marked as OPTIONAL for backward compatibility, though it is required during instance creation.", "enum": [ "PLATFORM_EDITION_UNSPECIFIED", "LOOKER_CORE_TRIAL", @@ -1355,7 +1361,7 @@ "type": "string" }, "privateIpEnabled": { - "description": "Whether private IP is enabled on the Looker instance.", + "description": "Optional. Whether private IP is enabled on the Looker instance.", "type": "boolean" }, "pscConfig": { @@ -1367,7 +1373,7 @@ "type": "boolean" }, "publicIpEnabled": { - "description": "Whether public IP is enabled on the Looker instance.", + "description": "Optional. Whether public IP is enabled on the Looker instance.", "type": "boolean" }, "releaseChannel": { @@ -1387,7 +1393,7 @@ "type": "string" }, "reservedRange": { - "description": "Name of a reserved IP address range within the Instance.consumer_network, to be used for private services access connection. May or may not be specified in a create request.", + "description": "Optional. Name of a reserved IP address range within the Instance.consumer_network, to be used for private services access connection. May or may not be specified in a create request.", "type": "string" }, "satisfiesPzi": { diff --git a/discovery/merchantapi-accounts_v1.json b/discovery/merchantapi-accounts_v1.json index 503293f9dd..2a289eda3d 100644 --- a/discovery/merchantapi-accounts_v1.json +++ b/discovery/merchantapi-accounts_v1.json @@ -851,7 +851,7 @@ ] }, "unclaim": { - "description": "Unclaims a store's homepage. Executing this method requires admin access.", + "description": "Unclaims a store's homepage. Executing this method requires admin access. This method only removes a claim made directly on the account. If the account inherits the claim from its advanced account (for example, from an advanced account that is exempted from claiming), the homepage stays claimed: the method returns a successful response and `claimed` remains `true`. If the account itself is exempted from claiming, the method returns a `FAILED_PRECONDITION` error.", "flatPath": "accounts/v1/accounts/{accountsId}/homepage:unclaim", "httpMethod": "POST", "id": "merchantapi.accounts.homepage.unclaim", @@ -2438,7 +2438,7 @@ } } }, - "revision": "20260930", + "revision": "20261021", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "About": { @@ -3710,7 +3710,7 @@ "id": "Homepage", "properties": { "claimed": { - "description": "Output only. Whether the homepage is claimed. See https://support.google.com/merchants/answer/176793.", + "description": "Output only. Whether the homepage is claimed. See [About online store URL verification](https://support.google.com/merchants/answer/176793). This field is also `true` if the account inherits the claim from its advanced account, or if the account is exempted from claiming, even when the homepage isn't claimed directly on the account.", "readOnly": true, "type": "boolean" }, diff --git a/discovery/merchantapi-accounts_v1beta.json b/discovery/merchantapi-accounts_v1beta.json index 8e7b0ab0fb..69ef9ec884 100644 --- a/discovery/merchantapi-accounts_v1beta.json +++ b/discovery/merchantapi-accounts_v1beta.json @@ -851,7 +851,7 @@ ] }, "unclaim": { - "description": "Unclaims a store's homepage. Executing this method requires admin access.", + "description": "Unclaims a store's homepage. Executing this method requires admin access. This method only removes a claim made directly on the account. If the account inherits the claim from its advanced account (for example, from an advanced account that is exempted from claiming), the homepage stays claimed: the method returns a successful response and `claimed` remains `true`. If the account itself is exempted from claiming, the method returns a `FAILED_PRECONDITION` error.", "flatPath": "accounts/v1beta/accounts/{accountsId}/homepage:unclaim", "httpMethod": "POST", "id": "merchantapi.accounts.homepage.unclaim", @@ -2388,7 +2388,7 @@ } } }, - "revision": "20260930", + "revision": "20261021", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "About": { @@ -3587,7 +3587,7 @@ "id": "Homepage", "properties": { "claimed": { - "description": "Output only. Whether the homepage is claimed. See https://support.google.com/merchants/answer/176793.", + "description": "Output only. Whether the homepage is claimed. See [About online store URL verification](https://support.google.com/merchants/answer/176793). This field is also `true` if the account inherits the claim from its advanced account, or if the account is exempted from claiming, even when the homepage isn't claimed directly on the account.", "readOnly": true, "type": "boolean" }, diff --git a/discovery/networkmanagement-v1.json b/discovery/networkmanagement-v1.json index 295f0eff3d..e7d79db9d2 100644 --- a/discovery/networkmanagement-v1.json +++ b/discovery/networkmanagement-v1.json @@ -569,7 +569,7 @@ "connectivityTests": { "methods": { "create": { - "description": "Creates a new Connectivity Test. After you create a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. If the endpoint specifications in `ConnectivityTest` are invalid (for example, containing non-existent resources in the network, or you don't have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of AMBIGUOUS. For more information, see the Connectivity Test documentation.", + "description": "Creates a new Connectivity Test. After you create a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. If the endpoint specifications in `ConnectivityTest` are invalid (for example, containing non-existent resources in the network, or you don't have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. For more information, see the Connectivity Test documentation.", "flatPath": "v1/projects/{projectsId}/locations/global/connectivityTests", "httpMethod": "POST", "id": "networkmanagement.projects.locations.global.connectivityTests.create", @@ -692,23 +692,23 @@ ], "parameters": { "filter": { - "description": "Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `>`, `<=`, `>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = \"projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar", + "description": "Optional. Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `>`, `<=`, `>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = \"projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar", "location": "query", "type": "string" }, "orderBy": { - "description": "Field to use to sort the list.", + "description": "Optional. Field to use to sort the list.", "location": "query", "type": "string" }, "pageSize": { - "description": "Number of `ConnectivityTests` to return.", + "description": "Optional. Number of `ConnectivityTests` to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Page token from an earlier query, as returned in `next_page_token`.", + "description": "Optional. Page token from an earlier query, as returned in `next_page_token`.", "location": "query", "type": "string" }, @@ -729,7 +729,7 @@ ] }, "patch": { - "description": "Updates the configuration of an existing `ConnectivityTest`. After you update a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. The Reachability state in the test resource is updated with the new result. If the endpoint specifications in `ConnectivityTest` are invalid (for example, they contain non-existent resources in the network, or the user does not have read permissions to the network configurations of listed projects), then the reachability result returns a value of UNKNOWN. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. See the documentation in `ConnectivityTest` for more details.", + "description": "Updates the configuration of an existing `ConnectivityTest`. After you update a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. The Reachability state in the test resource is updated with the new result. If the endpoint specifications in `ConnectivityTest` are invalid (for example, they contain non-existent resources in the network, or the user does not have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. See the documentation in `ConnectivityTest` for more details.", "flatPath": "v1/projects/{projectsId}/locations/global/connectivityTests/{connectivityTestsId}", "httpMethod": "PATCH", "id": "networkmanagement.projects.locations.global.connectivityTests.patch", @@ -1797,7 +1797,7 @@ } } }, - "revision": "20261007", + "revision": "20261014", "rootUrl": "https://networkmanagement.googleapis.com/", "schemas": { "AbortInfo": { @@ -3401,7 +3401,7 @@ "Ingress traffic to a Pod from a source on the same Node is always allowed.", "Egress traffic from a Pod that uses the Node's network namespace is not subject to Network Policy.", "Network Policy is not applied to response traffic. This is because GKE Network Policy evaluation is stateful in both GKE Dataplane V2 (eBPF) and legacy (iptables) implementations.", - "Network Policy evaluation is currently not supported for clusters with FQDN Network Policies enabled." + "Network Policy evaluation is currently not supported for Pods selected by an FQDN Network Policy." ], "type": "string" } @@ -4336,7 +4336,7 @@ "type": "string" }, "ruleNumber": { - "description": "The number of the NAT rule that was matched.", + "description": "The number of the NAT rule that was matched. Only valid when `type` is CLOUD_NAT.", "format": "int32", "type": "integer" }, diff --git a/discovery/networkmanagement-v1beta1.json b/discovery/networkmanagement-v1beta1.json index c707cfb622..55d9877c01 100644 --- a/discovery/networkmanagement-v1beta1.json +++ b/discovery/networkmanagement-v1beta1.json @@ -569,7 +569,7 @@ "connectivityTests": { "methods": { "create": { - "description": "Creates a new Connectivity Test. After you create a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. If the endpoint specifications in `ConnectivityTest` are invalid (for example, containing non-existent resources in the network, or you don't have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of AMBIGUOUS. For more information, see the Connectivity Test documentation.", + "description": "Creates a new Connectivity Test. After you create a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. If the endpoint specifications in `ConnectivityTest` are invalid (for example, containing non-existent resources in the network, or you don't have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. For more information, see the Connectivity Test documentation.", "flatPath": "v1beta1/projects/{projectsId}/locations/global/connectivityTests", "httpMethod": "POST", "id": "networkmanagement.projects.locations.global.connectivityTests.create", @@ -692,23 +692,23 @@ ], "parameters": { "filter": { - "description": "Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `>`, `<=`, `>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = \"projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar", + "description": "Optional. Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `>`, `<=`, `>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = \"projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar", "location": "query", "type": "string" }, "orderBy": { - "description": "Field to use to sort the list.", + "description": "Optional. Field to use to sort the list.", "location": "query", "type": "string" }, "pageSize": { - "description": "Number of `ConnectivityTests` to return.", + "description": "Optional. Number of `ConnectivityTests` to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Page token from an earlier query, as returned in `next_page_token`.", + "description": "Optional. Page token from an earlier query, as returned in `next_page_token`.", "location": "query", "type": "string" }, @@ -729,7 +729,7 @@ ] }, "patch": { - "description": "Updates the configuration of an existing `ConnectivityTest`. After you update a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. The Reachability state in the test resource is updated with the new result. If the endpoint specifications in `ConnectivityTest` are invalid (for example, they contain non-existent resources in the network, or the user does not have read permissions to the network configurations of listed projects), then the reachability result returns a value of UNKNOWN. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. See the documentation in `ConnectivityTest` for more details.", + "description": "Updates the configuration of an existing `ConnectivityTest`. After you update a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. The Reachability state in the test resource is updated with the new result. If the endpoint specifications in `ConnectivityTest` are invalid (for example, they contain non-existent resources in the network, or the user does not have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. See the documentation in `ConnectivityTest` for more details.", "flatPath": "v1beta1/projects/{projectsId}/locations/global/connectivityTests/{connectivityTestsId}", "httpMethod": "PATCH", "id": "networkmanagement.projects.locations.global.connectivityTests.patch", @@ -1237,7 +1237,7 @@ } } }, - "revision": "20261007", + "revision": "20261014", "rootUrl": "https://networkmanagement.googleapis.com/", "schemas": { "AbortInfo": { @@ -2804,7 +2804,7 @@ "Ingress traffic to a Pod from a source on the same Node is always allowed.", "Egress traffic from a Pod that uses the Node's network namespace is not subject to Network Policy.", "Network Policy is not applied to response traffic. This is because GKE Network Policy evaluation is stateful in both GKE Dataplane V2 (eBPF) and legacy (iptables) implementations.", - "Network Policy evaluation is currently not supported for clusters with FQDN Network Policies enabled." + "Network Policy evaluation is currently not supported for Pods selected by an FQDN Network Policy." ], "type": "string" } @@ -3433,7 +3433,7 @@ "type": "string" }, "ruleNumber": { - "description": "The number of the NAT rule that was matched.", + "description": "The number of the NAT rule that was matched. Only valid when `type` is CLOUD_NAT.", "format": "int32", "type": "integer" }, diff --git a/discovery/oracledatabase-v1.json b/discovery/oracledatabase-v1.json index abfc97942e..1474d22460 100644 --- a/discovery/oracledatabase-v1.json +++ b/discovery/oracledatabase-v1.json @@ -1302,6 +1302,244 @@ } } }, + "databaseConnections": { + "methods": { + "create": { + "description": "Creates a new DatabaseConnection in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/databaseConnections", + "httpMethod": "POST", + "id": "oracledatabase.projects.locations.databaseConnections.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "databaseConnectionId": { + "description": "Required. The ID of the DatabaseConnection to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent value for the DatabaseConnection in the following format: projects/{project}/locations/{location}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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).", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/databaseConnections", + "request": { + "$ref": "DatabaseConnection" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single DatabaseConnection.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/databaseConnections/{databaseConnectionsId}", + "httpMethod": "DELETE", + "id": "oracledatabase.projects.locations.databaseConnections.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource in the following format: projects/{project}/locations/{location}/databaseConnections/{database_connection}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/databaseConnections/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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).", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "executeSql": { + "description": "Executes a SQL statement on a DatabaseConnection.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/databaseConnections/{databaseConnectionsId}:executeSql", + "httpMethod": "POST", + "id": "oracledatabase.projects.locations.databaseConnections.executeSql", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the DatabaseConnection in the following format: projects/{project}/locations/{location}/databaseConnections/{database_connection}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/databaseConnections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:executeSql", + "request": { + "$ref": "ExecuteSqlRequest" + }, + "response": { + "$ref": "ExecuteSqlResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single DatabaseConnection.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/databaseConnections/{databaseConnectionsId}", + "httpMethod": "GET", + "id": "oracledatabase.projects.locations.databaseConnections.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the DatabaseConnection in the following format: projects/{project}/locations/{location}/databaseConnections/{database_connection}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/databaseConnections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "DatabaseConnection" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists DatabaseConnections in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/databaseConnections", + "httpMethod": "GET", + "id": "oracledatabase.projects.locations.databaseConnections.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. An expression for filtering the results of the request.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. An expression for ordering the results of the request.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return. If unspecified, at most 50 DatabaseConnections will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent value for the DatabaseConnection in the following format: projects/{project}/locations/{location}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/databaseConnections", + "response": { + "$ref": "ListDatabaseConnectionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single DatabaseConnection.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/databaseConnections/{databaseConnectionsId}", + "httpMethod": "PATCH", + "id": "oracledatabase.projects.locations.databaseConnections.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the DatabaseConnection. Format: projects/{project}/locations/{location}/databaseConnections/{database_connection}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/databaseConnections/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. A mask specifying which fields in the DatabaseConnection should be updated. A field specified in the mask is overwritten. If a mask isn't provided then all the fields in the DatabaseConnection are overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "DatabaseConnection" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "test": { + "description": "Tests connectivity of a DatabaseConnection.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/databaseConnections/{databaseConnectionsId}:test", + "httpMethod": "POST", + "id": "oracledatabase.projects.locations.databaseConnections.test", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the DatabaseConnection to test. Format: projects/{project}/locations/{location}/databaseConnections/{database_connection}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/databaseConnections/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:test", + "request": { + "$ref": "TestDatabaseConnectionRequest" + }, + "response": { + "$ref": "TestDatabaseConnectionResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "databases": { "methods": { "get": { @@ -3200,9 +3438,191 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "patch": { + "description": "Updates the `labels` and `service_connectivity_config` of a single OdbNetwork.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/odbNetworks/{odbNetworksId}", + "httpMethod": "PATCH", + "id": "oracledatabase.projects.locations.odbNetworks.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The name of the OdbNetwork resource in the following format: projects/{project}/locations/{region}/odbNetworks/{odb_network}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/odbNetworks/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Optional. A mask specifying which fields in the OdbNetwork should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "OdbNetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { + "odbDnsZones": { + "methods": { + "create": { + "description": "Creates a new ODB DNS Zone in a given ODB Network.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/odbNetworks/{odbNetworksId}/odbDnsZones", + "httpMethod": "POST", + "id": "oracledatabase.projects.locations.odbNetworks.odbDnsZones.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "odbDnsZoneId": { + "description": "Required. The ID of the OdbDnsZone to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent value for the OdbDnsZone in the following format: projects/{project}/locations/{location}/odbNetworks/{odb_network}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/odbNetworks/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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).", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/odbDnsZones", + "request": { + "$ref": "OdbDnsZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single ODB DNS Zone.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/odbNetworks/{odbNetworksId}/odbDnsZones/{odbDnsZonesId}", + "httpMethod": "DELETE", + "id": "oracledatabase.projects.locations.odbNetworks.odbDnsZones.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the resource in the following format: projects/{project}/locations/{location}/odbNetworks/{odb_network}/odbDnsZones/{odb_dns_zone}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/odbNetworks/[^/]+/odbDnsZones/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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).", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single ODB DNS Zone.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/odbNetworks/{odbNetworksId}/odbDnsZones/{odbDnsZonesId}", + "httpMethod": "GET", + "id": "oracledatabase.projects.locations.odbNetworks.odbDnsZones.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the OdbDnsZone in the following format: projects/{project}/locations/{location}/odbNetworks/{odb_network}/odbDnsZones/{odb_dns_zone}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/odbNetworks/[^/]+/odbDnsZones/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "OdbDnsZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all the ODB DNS Zones in a given ODB Network.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/odbNetworks/{odbNetworksId}/odbDnsZones", + "httpMethod": "GET", + "id": "oracledatabase.projects.locations.odbNetworks.odbDnsZones.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. An expression for filtering the results of the request.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. An expression for ordering the results of the request.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of items to return. If unspecified, at most 50 OdbDnsZones will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent value for the OdbDnsZone in the following format: projects/{project}/locations/{location}/odbNetworks/{odb_network}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/odbNetworks/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/odbDnsZones", + "response": { + "$ref": "ListOdbDnsZonesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "odbSubnets": { "methods": { "create": { @@ -3590,7 +4010,7 @@ } } }, - "revision": "20261012", + "revision": "20261019", "rootUrl": "https://oracledatabase.googleapis.com/", "schemas": { "AllConnectionStrings": { @@ -5153,6 +5573,10 @@ "description": "Optional. Immutable. The name of the VPC network. Format: projects/{project}/global/networks/{network}", "type": "string" }, + "odbDnsZone": { + "description": "Optional. Immutable. The name of the OdbDnsZone for using custom domain name for the VM Cluster. Format: projects/{project}/locations/{location}/odbNetworks/{odb_network}/odbDnsZones/{odb_dns_zone}", + "type": "string" + }, "odbNetwork": { "description": "Optional. Immutable. The name of the OdbNetwork associated with the VM Cluster. Format: projects/{project}/locations/{location}/odbNetworks/{odb_network} It is optional but if specified, this should match the parent ODBNetwork of the odb_subnet and backup_odb_subnet.", "type": "string" @@ -5431,6 +5855,21 @@ }, "type": "object" }, + "Column": { + "description": "Contains the name and datatype of a column in a SQL Result.", + "id": "Column", + "properties": { + "name": { + "description": "Required. Name of the column.", + "type": "string" + }, + "type": { + "description": "Required. Database-specific type name (e.g., \"VARCHAR2(255)\", \"NUMBER\", \"DATE\", \"CLOB\")", + "type": "string" + } + }, + "type": "object" + }, "ConfigureExascaleCloudExadataInfrastructureRequest": { "description": "The request for `CloudExadataInfrastructure.ConfigureExascale`.", "id": "ConfigureExascaleCloudExadataInfrastructureRequest", @@ -5649,6 +6088,84 @@ }, "type": "object" }, + "DatabaseConnection": { + "description": "Represents DatabaseConnection resource.", + "id": "DatabaseConnection", + "properties": { + "connectionString": { + "description": "Required. Immutable. Oracle Easy Connect or TNS connection string. Example: \"your-db-host.example.com:1521/YOUR_SERVICE_NAME\"", + "type": "string" + }, + "createTime": { + "description": "Output only. The create time of the resource.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "Optional. Immutable. User-friendly display name for the connection.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Optional: Labels as key-value pairs to organize the resource.", + "type": "object" + }, + "lifecycleDetails": { + "description": "Output only. Additional information about the current state of the connection.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the DatabaseConnection. Format: projects/{project}/locations/{location}/databaseConnections/{database_connection}", + "type": "string" + }, + "odbNetwork": { + "description": "Optional. Immutable. For Oracle Database@Google cloud resources. Format: projects/{project}/locations/{location}/odbNetworks/{odbNetwork}", + "type": "string" + }, + "passwordSecretVersion": { + "description": "Optional. The resource name of the GCP Secret Manager secret version containing the password for the specified username. Format: projects/{project}/secrets/{secret_id}/versions/{version_id} The service's Per-Product Per-Project Service Account (P4SA) must have the 'secretmanager.secretAccessor' permission on this secret.", + "type": "string" + }, + "state": { + "description": "Output only. The current state of the connection.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "FAILED", + "DELETING" + ], + "enumDescriptions": [ + "Default unspecified value.", + "Indicates that the resource is in a creating state.", + "Indicates that the resource is in an active state.", + "Indicates that the resource is in a failed state.", + "Indicates that the resource is in a deleting state." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The update time of the resource.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "username": { + "description": "Optional. Immutable. The default database username to use for connections.", + "type": "string" + }, + "walletSecretVersion": { + "description": "Optional. Optional: The resource name of the GCP Secret Manager secret version containing base64 encoded content of the Oracle Wallet ZIP file required for mTLS/TLS connections. Format: projects/{project}/secrets/{secret_id}/versions/{version_id} The service's Per-Product Per-Project Service Account (P4SA) must have the 'secretmanager.secretAccessor' permission on this secret.", + "type": "string" + } + }, + "type": "object" + }, "DatabaseConnectionStringProfile": { "description": "The connection string profile to allow clients to group. https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/DatabaseConnectionStringProfile", "id": "DatabaseConnectionStringProfile", @@ -7208,6 +7725,79 @@ }, "type": "object" }, + "ExecuteSqlMetadata": { + "description": "Any additional metadata information regarding the execution of the SQL", + "id": "ExecuteSqlMetadata", + "properties": { + "executionDuration": { + "description": "The time duration taken to execute the sql statement.", + "format": "google-duration", + "type": "string" + }, + "message": { + "description": "Message related to SQL execution. This field can be used to convey size limit related message.", + "type": "string" + }, + "partialResult": { + "description": "Set to true if SQL returned a result set larger than the acceptable response size limits and the result was truncated.", + "type": "boolean" + }, + "status": { + "description": "Output only. Status of SQL execution.", + "enum": [ + "STATUS_UNSPECIFIED", + "OK", + "PARTIAL", + "ERROR" + ], + "enumDescriptions": [ + "Default value. Not returned by the service.", + "No error during SQL execution i.e. All SQL statements ran to completion. The \"message\" will be empty.", + "Same as OK, except indicates that only partial results were returned. The \"message\" field will contain details on why results were truncated. `partial_result` is true if and only if `status` is `PARTIAL`.", + "The database returned an error while executing the SQL statement. `message` contains the error text returned by Oracle. `sql_results` is empty. The statement runs in autocommit mode; which changes are committed or rolled back follows Oracle Database behavior. Authentication failures, database availability errors, network errors, and timeouts are returned as API errors (AIP-193), not as ERROR." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ExecuteSqlRequest": { + "description": "The request for `DatabaseConnection.ExecuteSql`.", + "id": "ExecuteSqlRequest", + "properties": { + "params": { + "description": "Optional. Optional: Bind variables (parameters) to be used with the SQL statement. Supports named bind variables (e.g., :dept_id, :status in Oracle SQL) or positional parameters (:1, :2).", + "items": { + "$ref": "SqlParameter" + }, + "type": "array" + }, + "sqlStatement": { + "description": "Required. The SQL statement to execute.", + "type": "string" + } + }, + "type": "object" + }, + "ExecuteSqlResponse": { + "description": "Execute a SQL statement response.", + "id": "ExecuteSqlResponse", + "properties": { + "metadata": { + "$ref": "ExecuteSqlMetadata", + "description": "Any additional metadata information regarding the execution of the sql statement." + }, + "sqlResults": { + "description": "SqlResult represents the results for the execution of sql statements.", + "items": { + "$ref": "SqlResult" + }, + "type": "array" + } + }, + "type": "object" + }, "FailoverAutonomousDatabaseRequest": { "description": "The request for `OracleDatabase.FailoverAutonomousDatabase`.", "id": "FailoverAutonomousDatabaseRequest", @@ -10443,6 +11033,31 @@ }, "type": "object" }, + "ListDatabaseConnectionsResponse": { + "description": "The response for `DatabaseConnection.List`.", + "id": "ListDatabaseConnectionsResponse", + "properties": { + "databaseConnections": { + "description": "The list of DatabaseConnections.", + "items": { + "$ref": "DatabaseConnection" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Unreachable locations when listing resources across all locations using wildcard location '-'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListDatabasesResponse": { "description": "The response for `Database.List`.", "id": "ListDatabasesResponse", @@ -10873,6 +11488,31 @@ }, "type": "object" }, + "ListOdbDnsZonesResponse": { + "description": "The response for `OdbDnsZone.List`.", + "id": "ListOdbDnsZonesResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "odbDnsZones": { + "description": "The list of OdbDnsZones.", + "items": { + "$ref": "OdbDnsZone" + }, + "type": "array" + }, + "unreachable": { + "description": "Unreachable locations when listing resources across all locations using wildcard location '-'.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListOdbNetworksResponse": { "description": "The response for `OdbNetwork.List`.", "id": "ListOdbNetworksResponse", @@ -11193,6 +11833,55 @@ }, "type": "object" }, + "OdbDnsZone": { + "description": "Represents OdbDnsZone resource.", + "id": "OdbDnsZone", + "properties": { + "createTime": { + "description": "Output only. The date and time that the OdbDnsZone was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "domain": { + "description": "Required. The DNS suffix for the zone. Ex: abc.example.com.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Labels or tags associated with the resource.", + "type": "object" + }, + "name": { + "description": "Identifier. The name of the OdbDnsZone resource in the following format: projects/{project}/locations/{location}/odbNetworks/{odb_network}/odbDnsZones/{odb_dns_zone}", + "type": "string" + }, + "state": { + "description": "Output only. State of the OdbDnsZone.", + "enum": [ + "STATE_UNSPECIFIED", + "PROVISIONING", + "AVAILABLE", + "INACTIVE", + "TERMINATING", + "FAILED" + ], + "enumDescriptions": [ + "Default unspecified value.", + "Indicates that the resource is in a provisioning state.", + "Indicates that the resource is in an available state.", + "Indicates that the resource is available but inactive.", + "Indicates that the resource is in a terminating state.", + "Indicates that the resource is in a failed state." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "OdbNetwork": { "description": "Represents OdbNetwork resource.", "id": "OdbNetwork", @@ -11227,6 +11916,15 @@ "description": "Required. The name of the VPC network in the following format: projects/{project}/global/networks/{network}", "type": "string" }, + "reconciling": { + "description": "Output only. Indicates whether the OdbNetwork is currently reconciling changes.", + "readOnly": true, + "type": "boolean" + }, + "serviceConnectivityConfig": { + "$ref": "ServiceConnectivityConfig", + "description": "Optional. Configuration to enable the service (Oracledatabase@Google Cloud) to establish connectivity to the database. This should be specified if you intend to associate this OdbNetwork with a DatabaseConnection resource to `ExecuteSQL` on the database, or to create a ServiceIntegration with the Database. Please don't specify it otherwise to avoid complicating the network setup." + }, "state": { "description": "Output only. State of the ODB Network.", "enum": [ @@ -11626,6 +12324,17 @@ }, "type": "object" }, + "PscInterfaceConfig": { + "description": "Configuration for a Private Service Connect (PSC) interface used by Oracledatabase@Google Cloud to establish private connectivity to the database.", + "id": "PscInterfaceConfig", + "properties": { + "networkAttachment": { + "description": "Optional. The resource name of the Network Attachment that Oracledatabase@Google Cloud will use to establish private connectivity to the database via a Private Service Connect Interface (PSC-I). Format: projects/{project}/regions/{region}/networkAttachments/{network_attachment}", + "type": "string" + } + }, + "type": "object" + }, "RefreshAutonomousDatabaseRequest": { "description": "Request message for RefreshAutonomousDatabase method.", "id": "RefreshAutonomousDatabaseRequest", @@ -11689,6 +12398,20 @@ }, "type": "object" }, + "Row": { + "description": "A single row from a sql result.", + "id": "Row", + "properties": { + "values": { + "description": "List of values in a row of sql result.", + "items": { + "$ref": "Value" + }, + "type": "array" + } + }, + "type": "object" + }, "ScheduledOperationDetails": { "description": "Details of scheduled operation. https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/ScheduledOperationDetails", "id": "ScheduledOperationDetails", @@ -11731,6 +12454,17 @@ }, "type": "object" }, + "ServiceConnectivityConfig": { + "description": "Configuration to enable the service (Oracledatabase@Google Cloud) to establish connectivity to the database. This should be specified if you intend to associate this OdbNetwork with a DatabaseConnection resource to `ExecuteSQL` on the database, or to create a ServiceIntegration with the Database. Please don't specify it otherwise to avoid complicating the network setup.", + "id": "ServiceConnectivityConfig", + "properties": { + "pscInterfaceConfig": { + "$ref": "PscInterfaceConfig", + "description": "Optional. Configuration for Private Service Connect (PSC) interface." + } + }, + "type": "object" + }, "SourceConfig": { "description": "The source configuration for the standby Autonomous Database.", "id": "SourceConfig", @@ -11822,6 +12556,51 @@ }, "type": "object" }, + "SqlParameter": { + "description": "Represents a bind variable (parameter) for SQL execution.", + "id": "SqlParameter", + "properties": { + "name": { + "description": "Optional. The name of the SQL bind parameter (excluding the leading colon, e.g. \"id\"). If omitted, parameters bind positionally based on their order in the list.", + "type": "string" + }, + "typeName": { + "description": "Optional. Optional: Datatype hint for the parameter (e.g., \"VARCHAR2\", \"NUMBER\", \"DATE\", \"TIMESTAMP\"). If omitted, the Oracle driver will infer the type from the value string.", + "type": "string" + }, + "value": { + "description": "Required. Use protobuf.Value so clients can pass ints, bools, and strings natively.", + "type": "any" + } + }, + "type": "object" + }, + "SqlResult": { + "description": "SqlResult represents the result for the execution of a sql statement.", + "id": "SqlResult", + "properties": { + "affectedRowCount": { + "description": "Optional. The number of rows affected by DML statements (e.g., INSERT, UPDATE, DELETE, MERGE). Unset or 0 for SELECT / DDL statements.", + "format": "int64", + "type": "string" + }, + "columns": { + "description": "List of columns included in the result, including data type.", + "items": { + "$ref": "Column" + }, + "type": "array" + }, + "rows": { + "description": "Rows returned by the SQL statement.", + "items": { + "$ref": "Row" + }, + "type": "array" + } + }, + "type": "object" + }, "StartAutonomousDatabaseRequest": { "description": "The request for `AutonomousDatabase.Start`.", "id": "StartAutonomousDatabaseRequest", @@ -11926,6 +12705,27 @@ }, "type": "object" }, + "TestDatabaseConnectionRequest": { + "description": "Request message for `DatabaseConnection.TestDatabaseConnection`.", + "id": "TestDatabaseConnectionRequest", + "properties": {}, + "type": "object" + }, + "TestDatabaseConnectionResponse": { + "description": "Response message for `DatabaseConnection.TestDatabaseConnection`.", + "id": "TestDatabaseConnectionResponse", + "properties": { + "errorMessage": { + "description": "Error message if the test connection failed.", + "type": "string" + }, + "success": { + "description": "Whether the test connection was successful.", + "type": "boolean" + } + }, + "type": "object" + }, "TestGoldengateConnectionAssignmentRequest": { "description": "Request message for TestGoldengateConnectionAssignment.", "id": "TestGoldengateConnectionAssignmentRequest", @@ -12020,6 +12820,21 @@ } }, "type": "object" + }, + "Value": { + "description": "A single value in a row from a sql result.", + "id": "Value", + "properties": { + "nullValue": { + "description": "Set to true if the cell value is NULL.", + "type": "boolean" + }, + "value": { + "description": "The cell value represented in string format. Timestamps should be converted using RFC3339Nano format.", + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/discovery/osconfig-v1.json b/discovery/osconfig-v1.json index 90f280bebf..818f15cc73 100644 --- a/discovery/osconfig-v1.json +++ b/discovery/osconfig-v1.json @@ -435,7 +435,7 @@ "type": "string" }, "view": { - "description": "Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC.", + "description": "Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC.", "enum": [ "INVENTORY_VIEW_UNSPECIFIED", "BASIC", @@ -468,18 +468,18 @@ ], "parameters": { "filter": { - "description": "If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response.", + "description": "Optional. If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response.", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return.", + "description": "Optional. The maximum number of results to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from.", + "description": "Optional. A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from.", "location": "query", "type": "string" }, @@ -491,7 +491,7 @@ "type": "string" }, "view": { - "description": "Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC.", + "description": "Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC.", "enum": [ "INVENTORY_VIEW_UNSPECIFIED", "BASIC", @@ -1325,7 +1325,7 @@ } } }, - "revision": "20260611", + "revision": "20261015", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "AptSettings": { diff --git a/discovery/osconfig-v1alpha.json b/discovery/osconfig-v1alpha.json index 1659b2e7af..96f4080c50 100644 --- a/discovery/osconfig-v1alpha.json +++ b/discovery/osconfig-v1alpha.json @@ -445,7 +445,7 @@ "type": "string" }, "view": { - "description": "Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC.", + "description": "Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC.", "enum": [ "INVENTORY_VIEW_UNSPECIFIED", "BASIC", @@ -478,18 +478,18 @@ ], "parameters": { "filter": { - "description": "If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response.", + "description": "Optional. If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response.", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return.", + "description": "Optional. The maximum number of results to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from.", + "description": "Optional. A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from.", "location": "query", "type": "string" }, @@ -501,7 +501,7 @@ "type": "string" }, "view": { - "description": "Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC.", + "description": "Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC.", "enum": [ "INVENTORY_VIEW_UNSPECIFIED", "BASIC", @@ -949,7 +949,7 @@ } } }, - "revision": "20260910", + "revision": "20261015", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "CVSSv3": { diff --git a/discovery/paymentsresellersubscription-v1.json b/discovery/paymentsresellersubscription-v1.json index 298040440e..3a7941ae82 100644 --- a/discovery/paymentsresellersubscription-v1.json +++ b/discovery/paymentsresellersubscription-v1.json @@ -591,7 +591,7 @@ } } }, - "revision": "20260929", + "revision": "20261020", "rootUrl": "https://paymentsresellersubscription.googleapis.com/", "schemas": { "Amount": { @@ -743,7 +743,8 @@ "id": "EntitleSubscriptionRequest", "properties": { "lineItemEntitlementDetails": { - "description": "Optional. The line items to be entitled. If unspecified, all line items will be entitled.", + "deprecated": true, + "description": "Optional. Deprecated: This field is no longer supported. All line items are entitled automatically. Optional. The line items to be entitled. If unspecified, all line items will be entitled.", "items": { "$ref": "EntitleSubscriptionRequestLineItemEntitlementDetails" }, diff --git a/discovery/playdeveloperreporting-v1alpha1.json b/discovery/playdeveloperreporting-v1alpha1.json index 3a214accab..455f71c2a3 100644 --- a/discovery/playdeveloperreporting-v1alpha1.json +++ b/discovery/playdeveloperreporting-v1alpha1.json @@ -1118,7 +1118,7 @@ } } }, - "revision": "20260813", + "revision": "20261021", "rootUrl": "https://playdeveloperreporting.googleapis.com/", "schemas": { "ApiservingMcpMcpToolVisibility": { @@ -1727,7 +1727,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. * Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. * Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -1799,7 +1799,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000.", "format": "int32", "type": "integer" }, @@ -1871,7 +1871,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -1943,7 +1943,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000.", "format": "int32", "type": "integer" }, @@ -2015,7 +2015,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -2071,7 +2071,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -2143,7 +2143,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000.", "format": "int32", "type": "integer" }, @@ -2215,7 +2215,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -2287,7 +2287,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -2359,7 +2359,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, diff --git a/discovery/playdeveloperreporting-v1beta1.json b/discovery/playdeveloperreporting-v1beta1.json index b1c67a0274..8c3b7fa15c 100644 --- a/discovery/playdeveloperreporting-v1beta1.json +++ b/discovery/playdeveloperreporting-v1beta1.json @@ -1118,7 +1118,7 @@ } } }, - "revision": "20260813", + "revision": "20261021", "rootUrl": "https://playdeveloperreporting.googleapis.com/", "schemas": { "ApiservingMcpMcpToolVisibility": { @@ -1727,7 +1727,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. * Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. * Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -1799,7 +1799,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000.", "format": "int32", "type": "integer" }, @@ -1871,7 +1871,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -1943,7 +1943,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000.", "format": "int32", "type": "integer" }, @@ -2015,7 +2015,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -2071,7 +2071,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -2143,7 +2143,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000.", "format": "int32", "type": "integer" }, @@ -2215,7 +2215,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -2287,7 +2287,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, @@ -2359,7 +2359,7 @@ "type": "array" }, "pageSize": { - "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000.", + "description": "Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000.", "format": "int32", "type": "integer" }, diff --git a/discovery/run-v2.json b/discovery/run-v2.json index ec7b73c4e5..de6cb20e70 100644 --- a/discovery/run-v2.json +++ b/discovery/run-v2.json @@ -2669,9 +2669,34 @@ } } }, - "revision": "20261002", + "revision": "20261016", "rootUrl": "https://run.googleapis.com/", "schemas": { + "GoogleCloudRunV2AmbientNetworking": { + "description": "Configuration for Ambient Networking.", + "id": "GoogleCloudRunV2AmbientNetworking", + "properties": { + "ambientScope": { + "description": "The ambient networking scope of the instance.", + "enum": [ + "AMBIENT_SCOPE_UNSPECIFIED", + "AMBIENT_SCOPE_REGIONAL", + "AMBIENT_SCOPE_GLOBAL" + ], + "enumDescriptions": [ + "Unspecified.", + "Regional ambient networking.", + "Global ambient networking." + ], + "type": "string" + }, + "enabled": { + "description": "Optional. Whether ambient networking is enabled.", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudRunV2BinaryAuthorization": { "description": "Settings for Binary Authorization feature.", "id": "GoogleCloudRunV2BinaryAuthorization", @@ -4512,6 +4537,11 @@ "description": "A Revision is an immutable snapshot of code and configuration. A Revision references a container image. Revisions are only created by updates to its parent Service.", "id": "GoogleCloudRunV2Revision", "properties": { + "ambientNetworking": { + "$ref": "GoogleCloudRunV2AmbientNetworking", + "description": "Output only. The ambient networking configuration for this revision.", + "readOnly": true + }, "annotations": { "additionalProperties": { "type": "string" @@ -4791,6 +4821,10 @@ "description": "RevisionTemplate describes the data a revision should have when created from a template.", "id": "GoogleCloudRunV2RevisionTemplate", "properties": { + "ambientNetworking": { + "$ref": "GoogleCloudRunV2AmbientNetworking", + "description": "Optional. The ambient networking configuration for this revision." + }, "annotations": { "additionalProperties": { "type": "string" @@ -6780,6 +6814,25 @@ "description": "Optional. Option to specify the Pub/Sub topic to receive build status updates.", "type": "string" }, + "rankedMachineSeries": { + "description": "Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM.", + "items": { + "enum": [ + "MACHINE_SERIES_UNSPECIFIED", + "MACHINE_SERIES_E", + "MACHINE_SERIES_N", + "MACHINE_SERIES_C" + ], + "enumDescriptions": [ + "Should not be used.", + "Cost-optimized machines such as E2.", + "General-purpose machines such as N4.", + "Performance-optimized machines such as C4." + ], + "type": "string" + }, + "type": "array" + }, "requestedVerifyOption": { "description": "Requested verifiability options.", "enum": [ diff --git a/discovery/sqladmin-v1.json b/discovery/sqladmin-v1.json index 3e2c633682..acb4466676 100644 --- a/discovery/sqladmin-v1.json +++ b/discovery/sqladmin-v1.json @@ -3677,36 +3677,29 @@ ] }, "stopReplay": { - "description": "Stops executing a captured workload on the separate Cloud SQL instance.", - "flatPath": "v1/projects/{project}/instances/{instance}/workloadCaptures/{workloadId}:stopReplay", + "description": "Stops an active workload replay on the target Cloud SQL replay instance.", + "flatPath": "v1/projects/{project}/instances/{instance}/workloadCaptures:stopReplay", "httpMethod": "POST", "id": "sql.workloadCaptures.stopReplay", "parameterOrder": [ "project", - "instance", - "workloadId" + "instance" ], "parameters": { "instance": { - "description": "Required. Cloud SQL instance ID. This does not include the project ID.", + "description": "Required. Cloud SQL instance ID of the target replay instance. This does not include the project ID.", "location": "path", "required": true, "type": "string" }, "project": { - "description": "Required. Project ID of the project that contains the instance.", - "location": "path", - "required": true, - "type": "string" - }, - "workloadId": { - "description": "Required. The ID of the workload to replay.", + "description": "Required. Project ID of the project that contains the target replay instance.", "location": "path", "required": true, "type": "string" } }, - "path": "v1/projects/{project}/instances/{instance}/workloadCaptures/{workloadId}:stopReplay", + "path": "v1/projects/{project}/instances/{instance}/workloadCaptures:stopReplay", "request": { "$ref": "SqlWorkloadCapturesStopReplayRequest" }, @@ -3721,7 +3714,7 @@ } } }, - "revision": "20260929", + "revision": "20261006", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -10141,12 +10134,12 @@ "type": "object" }, "SqlWorkloadCapturesStopReplayRequest": { - "description": "Request to stop executing a captured workload on a replay instance.", + "description": "Request to stop an active workload replay on a target Cloud SQL replay instance.", "id": "SqlWorkloadCapturesStopReplayRequest", "properties": { "stopWorkloadReplayContext": { "$ref": "StopWorkloadReplayContext", - "description": "Required. Contains details about the stop workload replay operation." + "description": "Optional. Contains details about the stop workload replay operation. If omitted, default values are used." } }, "type": "object" @@ -10359,19 +10352,9 @@ "type": "object" }, "StopWorkloadReplayContext": { - "description": "The context for the `StopWorkloadReplay` operation, which contains details about stopping the execution of a captured workload (recorded read and write SQL queries) on a replay instance.", + "description": "The context for the `StopWorkloadReplay` operation, which represents an operation that stops an active workload replay on a target Cloud SQL replay instance.", "id": "StopWorkloadReplayContext", - "properties": { - "replayInstance": { - "description": "Required. The name of the Cloud SQL instance where the captured workload (SQL queries) is being executed, excluding the project ID (for example, `my-replay-instance`). The instance name must start with a lowercase letter and contain only lowercase letters, numbers, and hyphens. The combined length of `project-ID:instance-name` must be 98 characters or less.", - "type": "string" - }, - "workloadId": { - "description": "Output only. The ID of the workload to stop executing on the replay instance. Each workload capture generates a unique ID in the format `workload-` (for example, `workload-1786046400`). Use this ID to stop executing the recorded SQL queries.", - "readOnly": true, - "type": "string" - } - }, + "properties": {}, "type": "object" }, "SwitchoverBlueGreenDeploymentRequest": { diff --git a/discovery/travelimpactmodel-v1.json b/discovery/travelimpactmodel-v1.json index 352b5e9377..c58b2bedc2 100644 --- a/discovery/travelimpactmodel-v1.json +++ b/discovery/travelimpactmodel-v1.json @@ -161,7 +161,7 @@ } } }, - "revision": "20261019", + "revision": "20261021", "rootUrl": "https://travelimpactmodel.googleapis.com/", "schemas": { "ComputeDetailedFlightEmissionsRequest": { @@ -890,7 +890,7 @@ "type": "string" }, "distanceKm": { - "description": "Optional. Distance in kilometers, e.g. `2423`, from [1, 2.5e16) km. This is used to match a flight to distance-based emissions when origin and destination are not provided or there are no matching typical flights.", + "description": "Optional. Distance in kilometers, e.g. `2423`, from [`1`, `1e12`) km. This is used to match a flight to distance-based emissions when origin and destination are not provided or there are no matching typical flights.", "format": "int64", "type": "string" }, diff --git a/discovery/workstations-v1beta.json b/discovery/workstations-v1beta.json index 2fbfffe55e..aaeeaa491a 100644 --- a/discovery/workstations-v1beta.json +++ b/discovery/workstations-v1beta.json @@ -1245,7 +1245,7 @@ } } }, - "revision": "20261006", + "revision": "20261014", "rootUrl": "https://workstations.googleapis.com/", "schemas": { "Accelerator": { @@ -1493,6 +1493,14 @@ "description": "Configuration options for Cluster HTTP Gateway.", "id": "GatewayConfig", "properties": { + "directAccessPorts": { + "description": "Optional. Specifies VM ports that can be accessed using the standard `$HOSTNAME:$PORT` format in addition to the service's default `$PORT-$HOSTNAME` format. See [Access HTTP Servers Running on Workstations] (https://docs.cloud.google.com/workstations/docs/access-http-servers-running-on-workstations). Note: This only controls the routing URL format. Network-level access is still controlled by `allowed_ports` on WorkstationConfig. All `allowed_ports` remain accessible via the default `$PORT-$HOSTNAME` format.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, "http2Enabled": { "description": "Optional. Whether HTTP/2 is enabled for this workstation cluster. Defaults to false.", "type": "boolean" diff --git a/src/apis/androidmanagement/v1.ts b/src/apis/androidmanagement/v1.ts index b6ccbb4d16..589a290411 100644 --- a/src/apis/androidmanagement/v1.ts +++ b/src/apis/androidmanagement/v1.ts @@ -1318,7 +1318,7 @@ export namespace androidmanagement_v1 { */ bluetoothSharing?: string | null; /** - * Controls Wi-Fi configuring privileges. Based on the option set, user will have either full or limited or no control in configuring Wi-Fi networks. + * Optional. Controls Wi-Fi configuring privileges. Based on the option set, user will have either full or limited or no control in configuring Wi-Fi networks. */ configureWifi?: string | null; /** @@ -1330,15 +1330,15 @@ export namespace androidmanagement_v1 { */ privateDnsSettings?: Schema$PrivateDnsSettings; /** - * Controls tethering settings. Based on the value set, the user is partially or fully disallowed from using different forms of tethering. + * Optional. Controls tethering settings. Based on the value set, the user is partially or fully disallowed from using different forms of tethering. */ tetheringSettings?: string | null; /** - * Controls what files and/or data can be transferred via USB. Supported only on company-owned devices. + * Optional. Controls what files and/or data can be transferred via USB. Supported only on company-owned devices. */ usbDataAccess?: string | null; /** - * Controls configuring and using Wi-Fi direct settings. Supported on company-owned devices running Android 13 and above. + * Optional. Controls configuring and using Wi-Fi direct settings. Supported on company-owned devices running Android 13 and above. */ wifiDirectSettings?: string | null; /** @@ -1346,7 +1346,7 @@ export namespace androidmanagement_v1 { */ wifiRoamingPolicy?: Schema$WifiRoamingPolicy; /** - * Restrictions on which Wi-Fi SSIDs the device can connect to. Note that this does not affect which networks can be configured on the device. Supported on company-owned devices running Android 13 and above. + * Optional. Restrictions on which Wi-Fi SSIDs the device can connect to. Note that this does not affect which networks can be configured on the device. Supported on company-owned devices running Android 13 and above. */ wifiSsidPolicy?: Schema$WifiSsidPolicy; } @@ -2845,11 +2845,11 @@ export namespace androidmanagement_v1 { */ defaultPermissionPolicy?: string | null; /** - * Covers controls for device connectivity such as Wi-Fi, USB data access, keyboard/mouse connections, and more. + * Optional. Covers controls for device connectivity such as Wi-Fi, USB data access, keyboard/mouse connections, and more. */ deviceConnectivityManagement?: Schema$DeviceConnectivityManagement; /** - * The device owner information to be shown on the lock screen. + * Optional. The device owner information to be shown on the lock screen. */ deviceOwnerLockScreenInfo?: Schema$UserFacingMessage; /** @@ -3073,7 +3073,7 @@ export namespace androidmanagement_v1 { */ stayOnPluggedModes?: string[] | null; /** - * The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the update window will automatically apply to Play app updates as well.Note: Google Play system updates (https://source.android.com/docs/core/ota/modular-system) (also called Mainline updates) are automatically downloaded and require a device reboot to be installed. Refer to the mainline section in Manage system updates (https://developer.android.com/work/dpc/system-updates#mainline) for further details. + * The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the update window will automatically apply to Play app updates as well.Note: Google Play system updates (https://source.android.com/docs/core/ota/modular-system) (also called Mainline updates) are automatically downloaded and require a device reboot to be installed. Refer to the mainline section in Manage system updates (https://developer.android.com/work/dpc/system-updates#mainline) for further details.If this policy is set, it takes precedence over unifiedUpdatePolicy for OEM OS updates. For more information, see unifiedUpdatePolicy. */ systemUpdate?: Schema$SystemUpdate; /** @@ -4014,7 +4014,7 @@ export namespace androidmanagement_v1 { */ export interface Schema$WifiSsidPolicy { /** - * Type of the Wi-Fi SSID policy to be applied. + * Optional. Type of the Wi-Fi SSID policy to be applied. */ wifiSsidPolicyType?: string | null; /** diff --git a/src/apis/androidpublisher/v3.ts b/src/apis/androidpublisher/v3.ts index cc12203ec0..60e1b32ae5 100644 --- a/src/apis/androidpublisher/v3.ts +++ b/src/apis/androidpublisher/v3.ts @@ -2678,7 +2678,7 @@ export namespace androidpublisher_v3 { */ defaultPrice?: Schema$Price; /** - * Grace period of the subscription, specified in ISO 8601 format. Allows developers to give their subscribers a grace period when the payment for the new recurrence period is declined. Acceptable values are P0D (zero days), P3D (three days), P7D (seven days), P14D (14 days), and P30D (30 days). + * Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead. */ gracePeriod?: string | null; /** @@ -2710,15 +2710,15 @@ export namespace androidpublisher_v3 { */ status?: string | null; /** - * Subscription period, specified in ISO 8601 format. Acceptable values are P1W (one week), P1M (one month), P3M (three months), P6M (six months), and P1Y (one year). + * Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead. */ subscriptionPeriod?: string | null; /** - * Details about taxes and legal compliance. Only applicable to subscription products. + * Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead. */ subscriptionTaxesAndComplianceSettings?: Schema$SubscriptionTaxAndComplianceSettings; /** - * Trial period, specified in ISO 8601 format. Acceptable values are anything between P7D (seven days) and P999D (999 days). + * Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead. */ trialPeriod?: string | null; } @@ -2727,7 +2727,7 @@ export namespace androidpublisher_v3 { */ export interface Schema$InAppProductListing { /** - * Localized entitlement benefits for a subscription. + * Deprecated: Subscriptions are no longer supported in the InAppProducts API. Use the Subscriptions API instead. */ benefits?: string[] | null; /** diff --git a/src/apis/apigateway/v1.ts b/src/apis/apigateway/v1.ts index 54b0e15d28..7f98af2e35 100644 --- a/src/apis/apigateway/v1.ts +++ b/src/apis/apigateway/v1.ts @@ -330,7 +330,7 @@ export namespace apigateway_v1 { */ displayName?: string | null; /** - * Output only. The streaming mode this gateway is actually served with, which the service resolves at creation from `streaming_mode`, the referenced API Config, and the platform default at the time. Read this rather than `streaming_mode` to determine whether a gateway supports response streaming. + * Output only. The streaming mode this gateway is actually served with, which the service resolves at creation from `streaming_mode`, the referenced API Config, and the platform default at the time. Read this rather than `streaming_mode` to determine whether a gateway supports streaming. */ effectiveStreamingMode?: string | null; /** @@ -346,7 +346,7 @@ export namespace apigateway_v1 { */ state?: string | null; /** - * Optional. Immutable. Requests response streaming for a new gateway. An attempt to change it on update is rejected. If unset, the service selects the mode. This field records only what was requested and is never modified by the service; read `effective_streaming_mode` for the mode the gateway is served with. + * Optional. Immutable. Requests streaming for a new gateway. An attempt to change it on update is rejected. If unset, the service selects the mode. This field records only what was requested and is never modified by the service; read `effective_streaming_mode` for the mode the gateway is served with. */ streamingMode?: string | null; /** diff --git a/src/apis/apigateway/v1beta.ts b/src/apis/apigateway/v1beta.ts index 3ecb13c9d6..2d608fc65d 100644 --- a/src/apis/apigateway/v1beta.ts +++ b/src/apis/apigateway/v1beta.ts @@ -343,7 +343,7 @@ export namespace apigateway_v1beta { */ displayName?: string | null; /** - * Output only. The streaming mode this gateway is actually served with, which the service resolves at creation from `streaming_mode`, the referenced API Config, and the platform default at the time. Read this rather than `streaming_mode` to determine whether a gateway supports response streaming. + * Output only. The streaming mode this gateway is actually served with, which the service resolves at creation from `streaming_mode`, the referenced API Config, and the platform default at the time. Read this rather than `streaming_mode` to determine whether a gateway supports streaming. */ effectiveStreamingMode?: string | null; /** @@ -359,7 +359,7 @@ export namespace apigateway_v1beta { */ state?: string | null; /** - * Optional. Immutable. Requests response streaming for a new gateway. An attempt to change it on update is rejected. If unset, the service selects the mode. This field records only what was requested and is never modified by the service; read `effective_streaming_mode` for the mode the gateway is served with. + * Optional. Immutable. Requests streaming for a new gateway. An attempt to change it on update is rejected. If unset, the service selects the mode. This field records only what was requested and is never modified by the service; read `effective_streaming_mode` for the mode the gateway is served with. */ streamingMode?: string | null; /** diff --git a/src/apis/authorizedbuyersmarketplace/v1alpha.ts b/src/apis/authorizedbuyersmarketplace/v1alpha.ts index fdd48b1def..dd05e72dd2 100644 --- a/src/apis/authorizedbuyersmarketplace/v1alpha.ts +++ b/src/apis/authorizedbuyersmarketplace/v1alpha.ts @@ -1434,6 +1434,19 @@ export namespace authorizedbuyersmarketplace_v1alpha { */ mustBidRateCurrentMonth?: number | null; } + /** + * A response containing media planner account information from a search. + */ + export interface Schema$SearchMediaPlannersResponse { + /** + * List of media planners matching the search criteria. + */ + mediaPlanners?: Schema$MediaPlanner[]; + /** + * A token which can be passed to a subsequent call to the `SearchMediaPlanners` method to retrieve the next page of results in SearchMediaPlannersRequest.pageToken. + */ + nextPageToken?: string | null; + } /** * Request to send an RFP. All fields in this request are proposed to publisher and subject to changes by publisher during later negotiation. */ @@ -10614,6 +10627,155 @@ export namespace authorizedbuyersmarketplace_v1alpha { return createAPIRequest(parameters); } } + + /** + * Searches for media planner accounts matching the given DSP seat ID. For curators, this will return all matching media planners that have accepted curator terms. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/authorizedbuyersmarketplace.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const authorizedbuyersmarketplace = + * google.authorizedbuyersmarketplace('v1alpha'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/authorized-buyers-marketplace'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await authorizedbuyersmarketplace.mediaPlanners.search({ + * // Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner. + * dspSeatId: 'placeholder-value', + * // Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in `SearchMediaPlannersResponse.nextPageToken`. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "mediaPlanners": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + search( + params: Params$Resource$Mediaplanners$Search, + options: StreamMethodOptions + ): Promise>; + search( + params?: Params$Resource$Mediaplanners$Search, + options?: MethodOptions + ): Promise>; + search( + params: Params$Resource$Mediaplanners$Search, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Mediaplanners$Search, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Mediaplanners$Search, + callback: BodyResponseCallback + ): void; + search( + callback: BodyResponseCallback + ): void; + search( + paramsOrCallback?: + | Params$Resource$Mediaplanners$Search + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Mediaplanners$Search; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Mediaplanners$Search; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || + 'https://authorizedbuyersmarketplace.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/mediaPlanners:search').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Mediaplanners$List extends StandardParameters { @@ -10630,4 +10792,18 @@ export namespace authorizedbuyersmarketplace_v1alpha { */ pageToken?: string; } + export interface Params$Resource$Mediaplanners$Search extends StandardParameters { + /** + * Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner. + */ + dspSeatId?: string; + /** + * Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in `SearchMediaPlannersResponse.nextPageToken`. + */ + pageToken?: string; + } } diff --git a/src/apis/authorizedbuyersmarketplace/v1beta.ts b/src/apis/authorizedbuyersmarketplace/v1beta.ts index 16e1f68433..be71a4734f 100644 --- a/src/apis/authorizedbuyersmarketplace/v1beta.ts +++ b/src/apis/authorizedbuyersmarketplace/v1beta.ts @@ -500,6 +500,19 @@ export namespace authorizedbuyersmarketplace_v1beta { */ plcmtTargeting?: Schema$VideoPlcmtTargeting; } + /** + * A response containing media planner account information from a search. + */ + export interface Schema$SearchMediaPlannersResponse { + /** + * List of media planners matching the search criteria. + */ + mediaPlanners?: Schema$MediaPlanner[]; + /** + * A token which can be passed to a subsequent call to the `SearchMediaPlanners` method to retrieve the next page of results in SearchMediaPlannersRequest.pageToken. + */ + nextPageToken?: string | null; + } /** * Generic targeting with string values. */ @@ -2744,6 +2757,155 @@ export namespace authorizedbuyersmarketplace_v1beta { return createAPIRequest(parameters); } } + + /** + * Searches for media planner accounts matching the given DSP seat ID. For curators, this will return all matching media planners that have accepted curator terms. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/authorizedbuyersmarketplace.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const authorizedbuyersmarketplace = + * google.authorizedbuyersmarketplace('v1beta'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/authorized-buyers-marketplace'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await authorizedbuyersmarketplace.mediaPlanners.search({ + * // Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner. + * dspSeatId: 'placeholder-value', + * // Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in `SearchMediaPlannersResponse.nextPageToken`. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "mediaPlanners": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + search( + params: Params$Resource$Mediaplanners$Search, + options: StreamMethodOptions + ): Promise>; + search( + params?: Params$Resource$Mediaplanners$Search, + options?: MethodOptions + ): Promise>; + search( + params: Params$Resource$Mediaplanners$Search, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Mediaplanners$Search, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Mediaplanners$Search, + callback: BodyResponseCallback + ): void; + search( + callback: BodyResponseCallback + ): void; + search( + paramsOrCallback?: + | Params$Resource$Mediaplanners$Search + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Mediaplanners$Search; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Mediaplanners$Search; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || + 'https://authorizedbuyersmarketplace.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta/mediaPlanners:search').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Mediaplanners$List extends StandardParameters { @@ -2760,4 +2922,18 @@ export namespace authorizedbuyersmarketplace_v1beta { */ pageToken?: string; } + export interface Params$Resource$Mediaplanners$Search extends StandardParameters { + /** + * Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner. + */ + dspSeatId?: string; + /** + * Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in `SearchMediaPlannersResponse.nextPageToken`. + */ + pageToken?: string; + } } diff --git a/src/apis/backupdr/v1.ts b/src/apis/backupdr/v1.ts index 6ac965a894..4408a1a504 100644 --- a/src/apis/backupdr/v1.ts +++ b/src/apis/backupdr/v1.ts @@ -311,6 +311,43 @@ export namespace backupdr_v1 { */ startTime?: string | null; } + /** + * AppliedAutoProtectionPolicy is a read-only view of AutoProtectionPolicy and AutoProtectionPolicyBinding resources that apply to a given workload project. + */ + export interface Schema$AppliedAutoProtectionPolicy { + /** + * Output only. The set of backup plan configurations, mirroring the backup_plan_details from the source AutoProtectionPolicy. Each element specifies a backup plan for a given resource type. + */ + backupPlanDetails?: Schema$BackupPlanDetail[]; + /** + * Output only. The summary of the last policy application when the job has run. + */ + bindingEvaluationSummary?: Schema$BindingEvaluationSummary; + /** + * Output only. Timestamp indicating when the binding was last created. + */ + createTime?: string | null; + /** + * Output only. The criteria resources must meet for this rule to apply. From AutoProtectionPolicy.criteria. + */ + criteria?: Schema$Criteria; + /** + * Identifier. Canonical resource name. Format: projects/{workload-project-number\}/locations/{location\}/appliedAutoProtectionPolicies/{id\}. + */ + name?: string | null; + /** + * Output only. The full resource name of the AutoProtectionPolicyBinding that applies the source policy to a scope including this workload project. e.g., projects/{admin-project\}/locations/{location\}/autoProtectionPolicies/{policy_id\}/autoProtectionPolicyBindings/{binding_id\}. + */ + sourceBinding?: string | null; + /** + * Output only. The status of the applied auto protection policy. + */ + status?: string | null; + /** + * Output only. Timestamp indicating when the binding was last modified. + */ + updateTime?: string | null; + } /** * An instance-attached disk resource. */ @@ -410,6 +447,109 @@ export namespace backupdr_v1 { */ logType?: string | null; } + /** + * AutoProtectionDetails contains the protection details of a resource from the current binding's perspective. + */ + export interface Schema$AutoProtectionDetails { + /** + * Output only. Resource name of backup plan association linked to the resource, if any. Format: projects/{project\}/locations/{location\}/backupPlanAssociations/{backupPlanAssociationId\} + */ + backupPlanAssociation?: string | null; + /** + * Output only. Resource name of the datasource linked to the resource, if any. Format: projects/{project\}/locations/{location\}/backupVaults/{backupVaultId\}/dataSources/{dataSourceId\} + */ + dataSource?: string | null; + /** + * Output only. Error during last sync for protection/unprotection, if any. + */ + error?: Schema$Status; + /** + * Output only. Protection state of the resource from the current binding's perspective. Output only. + */ + state?: string | null; + } + /** + * An AutoprotectionPolicy is a policy resource designed to automate backup management, moving from manual per-resource protection to a bulk approach. The policy dynamically discovers and applies a specified backup plan to all eligible resources that match its defined scope and criteria. + */ + export interface Schema$AutoProtectionPolicy { + /** + * Required. The backup plan details for matching resources. + */ + backupPlanDetails?: Schema$BackupPlanDetail[]; + /** + * Output only. Summary of total count of different containers covered through this policy. + */ + bindingSummary?: Schema$BindingSummary; + /** + * Output only. The timestamp when the policy was created. + */ + createTime?: string | null; + /** + * Required. The criteria for matching resources. + */ + criteria?: Schema$Criteria; + /** + * Optional. A description of the policy. + */ + description?: string | null; + /** + * Output only. The etag for the policy. If this is provided on update, it must match the server's etag. + */ + etag?: string | null; + /** + * Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}` + */ + name?: string | null; + /** + * Output only. Summary of last policy evaluation when job was run per workload type. + */ + policyEvaluationSummary?: Schema$PolicyEvaluationSummary; + /** + * Output only. The current state of the AutoProtectionPolicy. + */ + state?: string | null; + /** + * Output only. The timestamp when the policy was last updated. + */ + updateTime?: string | null; + } + /** + * An AutoProtectionPolicyBinding (APPA) acts as the bridge between an AutoProtectionPolicy and the scope (Project) where the policy should be applied. + */ + export interface Schema$AutoProtectionPolicyBinding { + /** + * Output only. Summaries of the last policy application when the job has run, with one entry per resource type specified in the AutoProtectionPolicy. + */ + bindingEvaluationSummary?: Schema$BindingEvaluationSummary; + /** + * Output only. The timestamp when the binding was created. + */ + createTime?: string | null; + /** + * Optional. A description of the binding. + */ + description?: string | null; + /** + * Optional. Output only. The etag for the binding. If this is provided on update, it must match the server's etag. + */ + etag?: string | null; + /** + * Identifier. The resource name of the AutoProtectionPolicyBinding. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\}` + */ + name?: string | null; + /** + * Required. Immutable. Resource Id of target container on which policy will be applied. Format: projects/{project_id\} + */ + scope?: string | null; + /** + * Output only. The current state of the AutoProtectionPolicyBinding. + */ + state?: string | null; + /** + * Output only. The timestamp when the binding was last updated. + */ + updateTime?: string | null; + } /** * Message describing a Backup object. */ @@ -847,6 +987,10 @@ export namespace backupdr_v1 { * Output only. AlloyDB cluster's backup plan association properties. */ alloydbClusterBackupPlanAssociationProperties?: Schema$AlloyDBClusterBackupPlanAssociationProperties; + /** + * Output only. The resource name of the `AutoProtectionPolicyBinding` that manages this association, if any. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{policy\}/bindings/{binding\}`. + */ + autoProtectionPolicyBinding?: string | null; /** * Required. Resource name of backup plan which needs to be applied on workload. Format: projects/{project\}/locations/{location\}/backupPlans/{backupPlanId\} */ @@ -904,6 +1048,19 @@ export namespace backupdr_v1 { */ updateTime?: string | null; } + /** + * BackupPlanDetail defines configuration of protection. + */ + export interface Schema$BackupPlanDetail { + /** + * Required. The resource name of the BackupPlan to apply to resources that match the policy's criteria. This backup plan must be in the same location as AutoProtectionPolicy. Format: projects/{project\}/locations/{location\}/backupPlans/{backupPlanId\} + */ + backupPlan?: string | null; + /** + * Required. The type of resource that this policy will automatically protect. Allowed values are, `compute.googleapis.com/Instance` and `compute.googleapis.com/Disk` are supported. + */ + resourceType?: string | null; + } /** * `BackupPlanRevision` represents a snapshot of a `BackupPlan` at a point in time. */ @@ -1053,6 +1210,53 @@ export namespace backupdr_v1 { */ role?: string | null; } + /** + * BindingEvaluationSummary contains the summary of the last run of job that applies policy to matching resources for a given binding. + */ + export interface Schema$BindingEvaluationSummary { + /** + * Output only. The number of matching resources whose protection failed during job run. + */ + failedResourceCount?: string | null; + /** + * Output only. The number of resources that currently match the policy's criteria. + */ + matchingResourceCount?: string | null; + /** + * Output only. The number of matching resources that are successfully protected. + */ + protectedResourceCount?: string | null; + } + /** + * BindingMatchingResource contains the details of a resource that matches the criteria of a binding. + */ + export interface Schema$BindingMatchingResource { + /** + * Output only. The auto protection details of the resource from the current binding's perspective. + */ + autoProtectionDetails?: Schema$AutoProtectionDetails; + /** + * Output only. The timestamp when the resource was last evaluated for protection. + */ + lastEvaluationTime?: string | null; + /** + * Identifier. The resource name of the `BindingMatchingResource`. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\}/matchingResources/{matching_resource\}` + */ + name?: string | null; + /** + * Required. Immutable. Resource name of the workload that matches the criteria of the binding. The format can be either a relative resource name (e.g., `projects/my-project/zones/us-central1-a/instances/my-instance`) or a schemeless full resource name (e.g., `//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance`). + */ + resource?: string | null; + } + /** + * BindingSummary contains count of different containers covered through this policy. + */ + export interface Schema$BindingSummary { + /** + * Output only. Total count of Projects protected with this policy. + */ + projectCount?: string | null; + } /** * The request message for Operations.CancelOperation. */ @@ -1392,6 +1596,15 @@ export namespace backupdr_v1 { */ enableConfidentialCompute?: boolean | null; } + /** + * Criteria specifies a set of criteria for matching resources. + */ + export interface Schema$Criteria { + /** + * Required. A list of matching conditions that a resource must meet to be protected by the policy. + */ + matchingConditions?: Schema$MatchingCondition[]; + } /** * A customer-supplied encryption key. */ @@ -2100,6 +2313,10 @@ export namespace backupdr_v1 { * GcpBackupConfig captures the Backup configuration details for Google Cloud resources. All Google Cloud resources regardless of type are protected with backup plan associations. */ export interface Schema$GcpBackupConfig { + /** + * Output only. The resource name of the `AutoProtectionPolicyBinding` that manages this datasource, if any. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{policy\}/bindings/{binding\}`. + */ + autoProtectionPolicyBinding?: string | null; /** * The name of the backup plan. */ @@ -2277,6 +2494,10 @@ export namespace backupdr_v1 { */ newBackupGenerationId?: number | null; } + /** + * Request message for initiating delete of an AutoProtectionPolicyBinding. + */ + export interface Schema$InitiateDeleteAutoProtectionPolicyBindingRequest {} /** * Additional instance params. */ @@ -2286,6 +2507,19 @@ export namespace backupdr_v1 { */ resourceManagerTags?: {[key: string]: string} | null; } + /** + * KeyValuePair defines a key-value pair for matching resource labels. + */ + export interface Schema$KeyValuePair { + /** + * Required. The key of the label to match. This must be in the format `{label_key\}`. The key must match the regex Format:`\p{Ll\}\p{Lo\}{0,62\}`. + */ + key?: string | null; + /** + * Required. The values of the label to match. There will be explicit “OR” between values of array. Each value must be in the format `{label_value\}`. The value must match the regex Format: `[\\p{Ll\}\\p{Lo\}\\p{N\}_-]{1,63\}`. + */ + values?: string[] | null; + } /** * Message for a label key-value pair. */ @@ -2299,6 +2533,57 @@ export namespace backupdr_v1 { */ value?: string | null; } + /** + * Response message for ListAppliedAutoProtectionPolicies. + */ + export interface Schema$ListAppliedAutoProtectionPoliciesResponse { + /** + * A list of the AppliedAutoProtectionPolicy resources found. + */ + appliedAutoProtectionPolicies?: Schema$AppliedAutoProtectionPolicy[]; + /** + * A token that can be sent as `page_token` to retrieve the next page. + */ + nextPageToken?: string | null; + /** + * Unordered list. Locations that could not be reached. For example, "projects/my-project/locations/us-east1"]. + */ + unreachable?: string[] | null; + } + /** + * Response message for ListAutoProtectionPolicies. + */ + export interface Schema$ListAutoProtectionPoliciesResponse { + /** + * A list of the AutoProtectionPolicy resources found. + */ + autoProtectionPolicies?: Schema$AutoProtectionPolicy[]; + /** + * A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * Locations that could not be reached. + */ + unreachable?: string[] | null; + } + /** + * Response message for ListAutoProtectionPolicyBindings. + */ + export interface Schema$ListAutoProtectionPolicyBindingsResponse { + /** + * A list of the AutoProtectionPolicyBindings resources found. + */ + autoProtectionPolicyBindings?: Schema$AutoProtectionPolicyBinding[]; + /** + * A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. + */ + nextPageToken?: string | null; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + } /** * Response message for List BackupPlanAssociation */ @@ -2384,6 +2669,19 @@ export namespace backupdr_v1 { */ unreachable?: string[] | null; } + /** + * The response message for getting a list of `BindingMatchingResources`. + */ + export interface Schema$ListBindingMatchingResourcesResponse { + /** + * The list of `BindingMatchingResources` in the project,location for the specified binding. + */ + matchingResources?: Schema$BindingMatchingResource[]; + /** + * A token which may be sent as page_token in a subsequent `ListBindingMatchingResources` call to retrieve the next page of results. If this field is omitted or empty, then there are no more results to return. + */ + nextPageToken?: string | null; + } /** * Response for the ListDataSourceReferences method. */ @@ -2591,6 +2889,15 @@ export namespace backupdr_v1 { */ webUi?: string | null; } + /** + * MatchingCondition specifies a set of conditions for matching resources. + */ + export interface Schema$MatchingCondition { + /** + * Optional. A condition that matches resources based on their labels. For MVP, this is limited to a single label match. + */ + labelCondition?: Schema$KeyValuePair; + } /** * A metadata key/value entry. */ @@ -2799,6 +3106,23 @@ export namespace backupdr_v1 { */ version?: number | null; } + /** + * PolicyEvaluationSummary contains the summary of the last run of job that applies policy to matching resources. + */ + export interface Schema$PolicyEvaluationSummary { + /** + * Output only. The number of matching resources whose protection failed during job run. + */ + failedResourceCount?: string | null; + /** + * Output only. The number of resources that currently match the policy's criteria. + */ + matchingResourceCount?: string | null; + /** + * Output only. The number of matching resources that are successfully protected. + */ + protectedResourceCount?: string | null; + } /** * RegionDiskTargetEnvironment represents the target environment for the disk. */ @@ -3662,6 +3986,8 @@ export namespace backupdr_v1 { export class Resource$Projects$Locations { context: APIRequestContext; + appliedAutoProtectionPolicies: Resource$Projects$Locations$Appliedautoprotectionpolicies; + autoProtectionPolicies: Resource$Projects$Locations$Autoprotectionpolicies; backupPlanAssociations: Resource$Projects$Locations$Backupplanassociations; backupPlans: Resource$Projects$Locations$Backupplans; backupVaults: Resource$Projects$Locations$Backupvaults; @@ -3673,6 +3999,12 @@ export namespace backupdr_v1 { trial: Resource$Projects$Locations$Trial; constructor(context: APIRequestContext) { this.context = context; + this.appliedAutoProtectionPolicies = + new Resource$Projects$Locations$Appliedautoprotectionpolicies( + this.context + ); + this.autoProtectionPolicies = + new Resource$Projects$Locations$Autoprotectionpolicies(this.context); this.backupPlanAssociations = new Resource$Projects$Locations$Backupplanassociations(this.context); this.backupPlans = new Resource$Projects$Locations$Backupplans( @@ -4162,14 +4494,14 @@ export namespace backupdr_v1 { pageToken?: string; } - export class Resource$Projects$Locations$Backupplanassociations { + export class Resource$Projects$Locations$Appliedautoprotectionpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Create a BackupPlanAssociation + * Lists AppliedAutoProtectionPolicies in a given project and location. * @example * ```js * // Before running the sample: @@ -4201,45 +4533,26 @@ export namespace backupdr_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await backupdr.projects.locations.backupPlanAssociations.create({ - * // Required. The name of the backup plan association to create. The name must be unique for the specified project and location. - * backupPlanAssociationId: 'placeholder-value', - * // Required. The backup plan association project and location in the format `projects/{project_id\}/locations/{location\}`. In Backup and DR locations map to Google Cloud regions, for example **us-central1**. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and t he request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "alloydbClusterBackupPlanAssociationProperties": {}, - * // "backupPlan": "my_backupPlan", - * // "backupPlanRevisionId": "my_backupPlanRevisionId", - * // "backupPlanRevisionName": "my_backupPlanRevisionName", - * // "cloudSqlInstanceBackupPlanAssociationProperties": {}, - * // "createTime": "my_createTime", - * // "dataSource": "my_dataSource", - * // "filestoreInstanceBackupPlanAssociationProperties": {}, - * // "name": "my_name", - * // "netappVolumeBackupPlanAssociationProperties": {}, - * // "resource": "my_resource", - * // "resourceType": "my_resourceType", - * // "rulesConfigInfo": [], - * // "state": "my_state", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await backupdr.projects.locations.appliedAutoProtectionPolicies.list({ + * // Optional. A filter expression that filters resources listed in the response. + * filter: 'placeholder-value', + * // Optional. An expression that sorts the results in the response. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of applied policies to return in a single page. The maximum value is 1000; values above 1000 will be coerced to 1000. If unspecified or set to 0, a default page size of 500 will be used. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListAppliedAutoProtectionPolicies` call. + * pageToken: 'placeholder-value', + * // Required. The project and location for which to retrieve the list of applied policies. Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "appliedAutoProtectionPolicies": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -4255,12 +4568,2120 @@ export namespace backupdr_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Backupplanassociations$Create, + list( + params: Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Backupplanassociations$Create, + list( + params?: Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+parent}/appliedAutoProtectionPolicies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Appliedautoprotectionpolicies$List extends StandardParameters { + /** + * Optional. A filter expression that filters resources listed in the response. + */ + filter?: string; + /** + * Optional. An expression that sorts the results in the response. + */ + orderBy?: string; + /** + * Optional. The maximum number of applied policies to return in a single page. The maximum value is 1000; values above 1000 will be coerced to 1000. If unspecified or set to 0, a default page size of 500 will be used. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListAppliedAutoProtectionPolicies` call. + */ + pageToken?: string; + /** + * Required. The project and location for which to retrieve the list of applied policies. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Autoprotectionpolicies { + context: APIRequestContext; + bindings: Resource$Projects$Locations$Autoprotectionpolicies$Bindings; + constructor(context: APIRequestContext) { + this.context = context; + this.bindings = + new Resource$Projects$Locations$Autoprotectionpolicies$Bindings( + this.context + ); + } + + /** + * Creates a new AutoProtectionPolicy in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await backupdr.projects.locations.autoProtectionPolicies.create({ + * // Required. The ID to use for the policy. This will become the final component of the policy's resource name. + * autoProtectionPolicyId: 'placeholder-value', + * // Required. The parent resource where this policy will be created. Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "backupPlanDetails": [], + * // "bindingSummary": {}, + * // "createTime": "my_createTime", + * // "criteria": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "name": "my_name", + * // "policyEvaluationSummary": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/autoProtectionPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single AutoProtectionPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await backupdr.projects.locations.autoProtectionPolicies.delete({ + * // The current etag of the autoprotectionpolicy. If an etag is provided and does not match the current etag of the connection, deletion will be blocked. + * etag: 'placeholder-value', + * // Required. The name of the policy to delete. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\} + * name: 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single AutoProtectionPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await backupdr.projects.locations.autoProtectionPolicies.get({ + * // Required. The name of the policy to retrieve. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\} + * name: 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "backupPlanDetails": [], + * // "bindingSummary": {}, + * // "createTime": "my_createTime", + * // "criteria": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "name": "my_name", + * // "policyEvaluationSummary": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists AutoProtectionPolicies for a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await backupdr.projects.locations.autoProtectionPolicies.list({ + * // Optional. A filter expression that filters resources listed in the response. The following fields are filterable: + * filter: 'placeholder-value', + * // Optional. An expression that sorts the results in the response. The following fields are sortable: + * orderBy: 'placeholder-value', + * // Optional. The maximum number of policies to return in a single page. If unspecified, a server-default value will be used. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListAutoProtectionPolicies` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The project and location for which to retrieve the list of policies. Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "autoProtectionPolicies": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/autoProtectionPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates the parameters of a single AutoProtectionPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await backupdr.projects.locations.autoProtectionPolicies.patch({ + * // Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}` + * name: 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie', + * // Optional. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "backupPlanDetails": [], + * // "bindingSummary": {}, + * // "createTime": "my_createTime", + * // "criteria": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "name": "my_name", + * // "policyEvaluationSummary": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Create extends StandardParameters { + /** + * Required. The ID to use for the policy. This will become the final component of the policy's resource name. + */ + autoProtectionPolicyId?: string; + /** + * Required. The parent resource where this policy will be created. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AutoProtectionPolicy; + } + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Delete extends StandardParameters { + /** + * The current etag of the autoprotectionpolicy. If an etag is provided and does not match the current etag of the connection, deletion will be blocked. + */ + etag?: string; + /** + * Required. The name of the policy to delete. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\} + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Get extends StandardParameters { + /** + * Required. The name of the policy to retrieve. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\} + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$List extends StandardParameters { + /** + * Optional. A filter expression that filters resources listed in the response. The following fields are filterable: + */ + filter?: string; + /** + * Optional. An expression that sorts the results in the response. The following fields are sortable: + */ + orderBy?: string; + /** + * Optional. The maximum number of policies to return in a single page. If unspecified, a server-default value will be used. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListAutoProtectionPolicies` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The project and location for which to retrieve the list of policies. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Patch extends StandardParameters { + /** + * Identifier. The resource name of the AutoProtectionPolicy. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}` + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AutoProtectionPolicy; + } + + export class Resource$Projects$Locations$Autoprotectionpolicies$Bindings { + context: APIRequestContext; + matchingResources: Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources; + constructor(context: APIRequestContext) { + this.context = context; + this.matchingResources = + new Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources( + this.context + ); + } + + /** + * Creates a new AutoProtectionPolicyBinding in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await backupdr.projects.locations.autoProtectionPolicies.bindings.create({ + * // Required. The ID to use for the binding. This will become the final component of the binding's resource name. + * autoProtectionPolicyBindingId: 'placeholder-value', + * // Required. The parent resource where this binding will be created. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\} + * parent: + * 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindingEvaluationSummary": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "name": "my_name", + * // "scope": "my_scope", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/bindings').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the auto protection policy binding read from the CCFE tables. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await backupdr.projects.locations.autoProtectionPolicies.bindings.get({ + * // Required. The name of the binding to retrieve. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\} + * name: 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie/bindings/my-binding', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "bindingEvaluationSummary": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "name": "my_name", + * // "scope": "my_scope", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Initiates delete for AutoProtectionPolicy Binding + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await backupdr.projects.locations.autoProtectionPolicies.bindings.initiateDelete( + * { + * // Required. The name of the binding to delete. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\} + * name: 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie/bindings/my-binding', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + initiateDelete( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete, + options: StreamMethodOptions + ): Promise>; + initiateDelete( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete, + options?: MethodOptions + ): Promise>; + initiateDelete( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + initiateDelete( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + initiateDelete( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete, + callback: BodyResponseCallback + ): void; + initiateDelete(callback: BodyResponseCallback): void; + initiateDelete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}:initiateDelete').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the auto protection policy bindings read from the CCFE tables. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await backupdr.projects.locations.autoProtectionPolicies.bindings.list({ + * // Optional. A filter expression that filters resources listed in the response. The following fields are filterable: + * filter: 'placeholder-value', + * // Optional. An expression that sorts the results in the response. The following fields are sortable: + * orderBy: 'placeholder-value', + * // Optional. The maximum number of policies to return in a single page is 500. If unspecified, a server-default value will be used. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListAutoProtectionPolicies` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The project and location for which to retrieve the list of policies. Format: projects/{project\}/locations/{location\} + * parent: + * 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "autoProtectionPolicyBindings": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/bindings').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Create extends StandardParameters { + /** + * Required. The ID to use for the binding. This will become the final component of the binding's resource name. + */ + autoProtectionPolicyBindingId?: string; + /** + * Required. The parent resource where this binding will be created. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\} + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AutoProtectionPolicyBinding; + } + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Get extends StandardParameters { + /** + * Required. The name of the binding to retrieve. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\} + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Initiatedelete extends StandardParameters { + /** + * Required. The name of the binding to delete. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InitiateDeleteAutoProtectionPolicyBindingRequest; + } + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$List extends StandardParameters { + /** + * Optional. A filter expression that filters resources listed in the response. The following fields are filterable: + */ + filter?: string; + /** + * Optional. An expression that sorts the results in the response. The following fields are sortable: + */ + orderBy?: string; + /** + * Optional. The maximum number of policies to return in a single page is 500. If unspecified, a server-default value will be used. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListAutoProtectionPolicies` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The project and location for which to retrieve the list of policies. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets details of a single Binding Matching Resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await backupdr.projects.locations.autoProtectionPolicies.bindings.matchingResources.get( + * { + * // Required. The name of the matching resource to retrieve. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\}/matchingResources/{matching_resource\} + * name: 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie/bindings/my-binding/matchingResources/my-matchingResource', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "autoProtectionDetails": {}, + * // "lastEvaluationTime": "my_lastEvaluationTime", + * // "name": "my_name", + * // "resource": "my_resource" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Binding Matching Resources for a given AutoProtectionPolicyBinding. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await backupdr.projects.locations.autoProtectionPolicies.bindings.matchingResources.list( + * { + * // Optional. Field match expression used to filter the results. + * filter: 'placeholder-value', + * // Optional. Field by which to sort the results. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of `BindingMatchingResources` to return in a single response. The default page size is 100 and maximum page size is 200. Note that the response may include a partial list and a caller should only rely on the response's next_page_token to determine if there are more instances left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The value of next_page_token received from a previous `ListBindingMatchingResources` call. Provide this to retrieve the subsequent page in a multi-page list of results. When paginating, all other parameters provided to `ListBindingMatchingResources` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The project, location, auto protection policy and binding for which to retrieve `BindingMatchingResources` information. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\}`. In Google Cloud Backup and DR, locations map to Google Cloud regions, for example **us-central1**. + * parent: + * 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie/bindings/my-binding', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "matchingResources": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://backupdr.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/matchingResources').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$Get extends StandardParameters { + /** + * Required. The name of the matching resource to retrieve. Format: projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\}/matchingResources/{matching_resource\} + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Autoprotectionpolicies$Bindings$Matchingresources$List extends StandardParameters { + /** + * Optional. Field match expression used to filter the results. + */ + filter?: string; + /** + * Optional. Field by which to sort the results. + */ + orderBy?: string; + /** + * Optional. The maximum number of `BindingMatchingResources` to return in a single response. The default page size is 100 and maximum page size is 200. Note that the response may include a partial list and a caller should only rely on the response's next_page_token to determine if there are more instances left to be queried. + */ + pageSize?: number; + /** + * Optional. The value of next_page_token received from a previous `ListBindingMatchingResources` call. Provide this to retrieve the subsequent page in a multi-page list of results. When paginating, all other parameters provided to `ListBindingMatchingResources` must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The project, location, auto protection policy and binding for which to retrieve `BindingMatchingResources` information. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}/bindings/{binding\}`. In Google Cloud Backup and DR, locations map to Google Cloud regions, for example **us-central1**. + */ + parent?: string; + } + + export class Resource$Projects$Locations$Backupplanassociations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a BackupPlanAssociation + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/backupdr.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const backupdr = google.backupdr('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-backupdr', + * 'https://www.googleapis.com/auth/cloud-platform', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await backupdr.projects.locations.backupPlanAssociations.create({ + * // Required. The name of the backup plan association to create. The name must be unique for the specified project and location. + * backupPlanAssociationId: 'placeholder-value', + * // Required. The backup plan association project and location in the format `projects/{project_id\}/locations/{location\}`. In Backup and DR locations map to Google Cloud regions, for example **us-central1**. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and t he request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "alloydbClusterBackupPlanAssociationProperties": {}, + * // "autoProtectionPolicyBinding": "my_autoProtectionPolicyBinding", + * // "backupPlan": "my_backupPlan", + * // "backupPlanRevisionId": "my_backupPlanRevisionId", + * // "backupPlanRevisionName": "my_backupPlanRevisionName", + * // "cloudSqlInstanceBackupPlanAssociationProperties": {}, + * // "createTime": "my_createTime", + * // "dataSource": "my_dataSource", + * // "filestoreInstanceBackupPlanAssociationProperties": {}, + * // "name": "my_name", + * // "netappVolumeBackupPlanAssociationProperties": {}, + * // "resource": "my_resource", + * // "resourceType": "my_resourceType", + * // "rulesConfigInfo": [], + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Backupplanassociations$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Backupplanassociations$Create, options?: MethodOptions ): Promise>; create( @@ -4372,6 +6793,8 @@ export namespace backupdr_v1 { * * // Do the magic * const res = await backupdr.projects.locations.backupPlanAssociations.delete({ + * // Optional. This field is exclusively used by Backup and DR's auto-protection feature. The resource name of the `AutoProtectionPolicyBinding` that triggered the deletion of this association. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{policy\}/bindings/{binding\}`. + * autoProtectionPolicyBinding: 'placeholder-value', * // Required. Name of the backup plan association resource, in the format `projects/{project\}/locations/{location\}/backupPlanAssociations/{backupPlanAssociationId\}` * name: 'projects/my-project/locations/my-location/backupPlanAssociations/my-backupPlanAssociation', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). @@ -4688,6 +7111,7 @@ export namespace backupdr_v1 { * // Example response * // { * // "alloydbClusterBackupPlanAssociationProperties": {}, + * // "autoProtectionPolicyBinding": "my_autoProtectionPolicyBinding", * // "backupPlan": "my_backupPlan", * // "backupPlanRevisionId": "my_backupPlanRevisionId", * // "backupPlanRevisionName": "my_backupPlanRevisionName", @@ -5004,6 +7428,7 @@ export namespace backupdr_v1 { * // request body parameters * // { * // "alloydbClusterBackupPlanAssociationProperties": {}, + * // "autoProtectionPolicyBinding": "my_autoProtectionPolicyBinding", * // "backupPlan": "my_backupPlan", * // "backupPlanRevisionId": "my_backupPlanRevisionId", * // "backupPlanRevisionName": "my_backupPlanRevisionName", @@ -5302,6 +7727,10 @@ export namespace backupdr_v1 { requestBody?: Schema$BackupPlanAssociation; } export interface Params$Resource$Projects$Locations$Backupplanassociations$Delete extends StandardParameters { + /** + * Optional. This field is exclusively used by Backup and DR's auto-protection feature. The resource name of the `AutoProtectionPolicyBinding` that triggered the deletion of this association. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{policy\}/bindings/{binding\}`. + */ + autoProtectionPolicyBinding?: string; /** * Required. Name of the backup plan association resource, in the format `projects/{project\}/locations/{location\}/backupPlanAssociations/{backupPlanAssociationId\}` */ diff --git a/src/apis/backupdr/v1beta.ts b/src/apis/backupdr/v1beta.ts index d57ee61422..9fc1d18d63 100644 --- a/src/apis/backupdr/v1beta.ts +++ b/src/apis/backupdr/v1beta.ts @@ -5283,7 +5283,7 @@ export namespace backupdr_v1beta { * const res = await backupdr.projects.locations.autoProtectionPolicies.patch({ * // Identifier. The resource name of the AutoprotectionPolicy. Format: `projects/{project\}/locations/{location\}/autoProtectionPolicies/{auto_protection_policy\}` * name: 'projects/my-project/locations/my-location/autoProtectionPolicies/my-autoProtectionPolicie', - * // Required. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * // Optional. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. * updateMask: 'placeholder-value', * * // Request body metadata @@ -5467,7 +5467,7 @@ export namespace backupdr_v1beta { */ name?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * Optional. Field mask is used to specify the fields to be overwritten in the AutoProtectionPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */ updateMask?: string; diff --git a/src/apis/beyondcorp/v1.ts b/src/apis/beyondcorp/v1.ts index 8df0cd9401..9519fcbfe8 100644 --- a/src/apis/beyondcorp/v1.ts +++ b/src/apis/beyondcorp/v1.ts @@ -755,23 +755,6 @@ export namespace beyondcorp_v1 { * RemoteAgentDetails reflects the details of a remote agent. */ export interface Schema$GoogleCloudBeyondcorpAppconnectorsV1RemoteAgentDetails {} - /** - * Request report the connector status. - */ - export interface Schema$GoogleCloudBeyondcorpAppconnectorsV1ReportStatusRequest { - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string | null; - /** - * Required. Resource info of the connector. - */ - resourceInfo?: Schema$GoogleCloudBeyondcorpAppconnectorsV1ResourceInfo; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean | null; - } /** * Response message for BeyondCorp.ResolveInstanceConfig. */ @@ -2672,176 +2655,6 @@ export namespace beyondcorp_v1 { this.context = context; } - /** - * Creates a new AppConnection in a given project and location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appConnections.create({ - * // Optional. User-settable AppConnection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - * appConnectionId: 'placeholder-value', - * // Required. The resource project name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "applicationEndpoint": {}, - * // "connectors": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "gateway": {}, - * // "labels": {}, - * // "name": "my_name", - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - create( - params: Params$Resource$Projects$Locations$Appconnections$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Appconnections$Create, - options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Appconnections$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Appconnections$Create, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Appconnections$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnections$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnections$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnections$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/appConnections').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - /** * Deletes a single AppConnection. * @example @@ -3447,7 +3260,7 @@ export namespace beyondcorp_v1 { } /** - * Updates the parameters of a single AppConnection. + * Resolves AppConnections details for a given AppConnector. An internal method called by a connector to find AppConnections to connect to. * @example * ```js * // Before running the sample: @@ -3476,47 +3289,23 @@ export namespace beyondcorp_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnections.patch({ - * // Optional. If set as true, will create the resource if it is not found. - * allowMissing: 'placeholder-value', - * // Required. Unique resource name of the AppConnection. The name is ignored when creating a AppConnection. - * name: 'projects/my-project/locations/my-location/appConnections/my-appConnection', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnection]: * `labels` * `display_name` * `application_endpoint` * `connectors` - * updateMask: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "applicationEndpoint": {}, - * // "connectors": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "gateway": {}, - * // "labels": {}, - * // "name": "my_name", - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await beyondcorp.projects.locations.appConnections.resolve({ + * // Required. BeyondCorp Connector name of the connector associated with those AppConnections using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` + * appConnectorId: 'placeholder-value', + * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous ResolveAppConnectionsResponse, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "appConnectionDetails": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -3532,56 +3321,62 @@ export namespace beyondcorp_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Appconnections$Patch, + resolve( + params: Params$Resource$Projects$Locations$Appconnections$Resolve, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Appconnections$Patch, + resolve( + params?: Params$Resource$Projects$Locations$Appconnections$Resolve, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Appconnections$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + resolve( + params: Params$Resource$Projects$Locations$Appconnections$Resolve, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Appconnections$Patch, + resolve( + params: Params$Resource$Projects$Locations$Appconnections$Resolve, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Appconnections$Patch, - callback: BodyResponseCallback + resolve( + params: Params$Resource$Projects$Locations$Appconnections$Resolve, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + resolve( + callback: BodyResponseCallback ): void; - patch( + resolve( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnections$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appconnections$Resolve + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnections$Patch; + {}) as Params$Resource$Projects$Locations$Appconnections$Resolve; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnections$Patch; + params = + {} as Params$Resource$Projects$Locations$Appconnections$Resolve; options = {}; } @@ -3594,173 +3389,22 @@ export namespace beyondcorp_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+parent}/appConnections:resolve').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Resolves AppConnections details for a given AppConnector. An internal method called by a connector to find AppConnections to connect to. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appConnections.resolve({ - * // Required. BeyondCorp Connector name of the connector associated with those AppConnections using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` - * appConnectorId: 'placeholder-value', - * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The next_page_token value returned from a previous ResolveAppConnectionsResponse, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "appConnectionDetails": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - resolve( - params: Params$Resource$Projects$Locations$Appconnections$Resolve, - options: StreamMethodOptions - ): Promise>; - resolve( - params?: Params$Resource$Projects$Locations$Appconnections$Resolve, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - resolve( - params: Params$Resource$Projects$Locations$Appconnections$Resolve, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - resolve( - params: Params$Resource$Projects$Locations$Appconnections$Resolve, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - resolve( - params: Params$Resource$Projects$Locations$Appconnections$Resolve, - callback: BodyResponseCallback - ): void; - resolve( - callback: BodyResponseCallback - ): void; - resolve( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnections$Resolve - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnections$Resolve; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Appconnections$Resolve; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/appConnections:resolve').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); @@ -4083,29 +3727,6 @@ export namespace beyondcorp_v1 { } } - export interface Params$Resource$Projects$Locations$Appconnections$Create extends StandardParameters { - /** - * Optional. User-settable AppConnection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - */ - appConnectionId?: string; - /** - * Required. The resource project name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectionsV1AppConnection; - } export interface Params$Resource$Projects$Locations$Appconnections$Delete extends StandardParameters { /** * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnections/{app_connection_id\}` @@ -4158,33 +3779,6 @@ export namespace beyondcorp_v1 { */ parent?: string; } - export interface Params$Resource$Projects$Locations$Appconnections$Patch extends StandardParameters { - /** - * Optional. If set as true, will create the resource if it is not found. - */ - allowMissing?: boolean; - /** - * Required. Unique resource name of the AppConnection. The name is ignored when creating a AppConnection. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnection]: * `labels` * `display_name` * `application_endpoint` * `connectors` - */ - updateMask?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectionsV1AppConnection; - } export interface Params$Resource$Projects$Locations$Appconnections$Resolve extends StandardParameters { /** * Required. BeyondCorp Connector name of the connector associated with those AppConnections using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` @@ -4233,7 +3827,7 @@ export namespace beyondcorp_v1 { } /** - * Creates a new AppConnector in a given project and location. + * Deletes a single AppConnector. * @example * ```js * // Before running the sample: @@ -4262,31 +3856,13 @@ export namespace beyondcorp_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.create({ - * // Optional. User-settable AppConnector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - * appConnectorId: 'placeholder-value', - * // Required. The resource project name of the AppConnector location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * const res = await beyondcorp.projects.locations.appConnectors.delete({ + * // Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` + * name: 'projects/my-project/locations/my-location/appConnectors/my-appConnector', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). * requestId: 'placeholder-value', * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "name": "my_name", - * // "principalInfo": {}, - * // "resourceInfo": {}, - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, * }); * console.log(res.data); * @@ -4312,35 +3888,35 @@ export namespace beyondcorp_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params: Params$Resource$Projects$Locations$Appconnectors$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params?: Params$Resource$Projects$Locations$Appconnectors$Delete, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params: Params$Resource$Projects$Locations$Appconnectors$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params: Params$Resource$Projects$Locations$Appconnectors$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params: Params$Resource$Projects$Locations$Appconnectors$Delete, callback: BodyResponseCallback ): void; - create( + delete( callback: BodyResponseCallback ): void; - create( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Create + | Params$Resource$Projects$Locations$Appconnectors$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -4356,12 +3932,12 @@ export namespace beyondcorp_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Create; + {}) as Params$Resource$Projects$Locations$Appconnectors$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnectors$Create; + params = {} as Params$Resource$Projects$Locations$Appconnectors$Delete; options = {}; } @@ -4374,18 +3950,15 @@ export namespace beyondcorp_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/appConnectors').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -4399,7 +3972,7 @@ export namespace beyondcorp_v1 { } /** - * Deletes a single AppConnector. + * Gets details of a single AppConnector. * @example * ```js * // Before running the sample: @@ -4428,162 +4001,17 @@ export namespace beyondcorp_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.delete({ + * const res = await beyondcorp.projects.locations.appConnectors.get({ * // Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` * name: 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - delete( - params: Params$Resource$Projects$Locations$Appconnectors$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Appconnectors$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Appconnectors$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Appconnectors$Delete, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Appconnectors$Delete, - callback: BodyResponseCallback - ): void; - delete( - callback: BodyResponseCallback - ): void; - delete( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnectors$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets details of a single AppConnector. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.get({ - * // Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` - * name: 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "labels": {}, * // "name": "my_name", * // "principalInfo": {}, * // "resourceInfo": {}, @@ -4912,375 +4340,54 @@ export namespace beyondcorp_v1 { list( params?: Params$Resource$Projects$Locations$Appconnectors$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Appconnectors$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Appconnectors$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Appconnectors$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnectors$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/appConnectors').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Updates the parameters of a single AppConnector. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.patch({ - * // Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector. - * name: 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnector]: * `labels` * `display_name` - * updateMask: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "name": "my_name", - * // "principalInfo": {}, - * // "resourceInfo": {}, - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - patch( - params: Params$Resource$Projects$Locations$Appconnectors$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Appconnectors$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Appconnectors$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Appconnectors$Patch, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Projects$Locations$Appconnectors$Patch, - callback: BodyResponseCallback - ): void; - patch( - callback: BodyResponseCallback - ): void; - patch( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnectors$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Report status for a given connector. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.reportStatus({ - * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector\}` - * appConnector: - * 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "requestId": "my_requestId", - * // "resourceInfo": {}, - * // "validateOnly": false - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - reportStatus( - params: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, - options: StreamMethodOptions - ): Promise>; - reportStatus( - params?: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, - options?: MethodOptions - ): Promise>; - reportStatus( - params: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Appconnectors$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportStatus( - params: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, + list( + params: Params$Resource$Projects$Locations$Appconnectors$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - reportStatus( - params: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Appconnectors$List, + callback: BodyResponseCallback ): void; - reportStatus( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - reportStatus( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Reportstatus - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appconnectors$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Reportstatus; + {}) as Params$Resource$Projects$Locations$Appconnectors$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Appconnectors$Reportstatus; + params = {} as Params$Resource$Projects$Locations$Appconnectors$List; options = {}; } @@ -5293,27 +4400,29 @@ export namespace beyondcorp_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+appConnector}:reportStatus').replace( + url: (rootUrl + '/v1/{+parent}/appConnectors').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['appConnector'], - pathParams: ['appConnector'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } @@ -5778,29 +4887,6 @@ export namespace beyondcorp_v1 { } } - export interface Params$Resource$Projects$Locations$Appconnectors$Create extends StandardParameters { - /** - * Optional. User-settable AppConnector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - */ - appConnectorId?: string; - /** - * Required. The resource project name of the AppConnector location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectorsV1AppConnector; - } export interface Params$Resource$Projects$Locations$Appconnectors$Delete extends StandardParameters { /** * Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` @@ -5853,40 +4939,6 @@ export namespace beyondcorp_v1 { */ parent?: string; } - export interface Params$Resource$Projects$Locations$Appconnectors$Patch extends StandardParameters { - /** - * Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnector]: * `labels` * `display_name` - */ - updateMask?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectorsV1AppConnector; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Reportstatus extends StandardParameters { - /** - * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector\}` - */ - appConnector?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectorsV1ReportStatusRequest; - } export interface Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig extends StandardParameters { /** * Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector\}` @@ -5922,176 +4974,6 @@ export namespace beyondcorp_v1 { this.context = context; } - /** - * Creates a new AppGateway in a given project and location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appGateways.create({ - * // Optional. User-settable AppGateway resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - * appGatewayId: 'placeholder-value', - * // Required. The resource project name of the AppGateway location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allocatedConnections": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "hostType": "my_hostType", - * // "labels": {}, - * // "name": "my_name", - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime", - * // "uri": "my_uri" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - create( - params: Params$Resource$Projects$Locations$Appgateways$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Appgateways$Create, - options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Appgateways$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Appgateways$Create, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Appgateways$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appgateways$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appgateways$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appgateways$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/appGateways').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - /** * Deletes a single AppGateway. * @example @@ -6988,29 +5870,6 @@ export namespace beyondcorp_v1 { } } - export interface Params$Resource$Projects$Locations$Appgateways$Create extends StandardParameters { - /** - * Optional. User-settable AppGateway resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - */ - appGatewayId?: string; - /** - * Required. The resource project name of the AppGateway location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$AppGateway; - } export interface Params$Resource$Projects$Locations$Appgateways$Delete extends StandardParameters { /** * Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` diff --git a/src/apis/beyondcorp/v1alpha.ts b/src/apis/beyondcorp/v1alpha.ts index 6ba9f2c3f6..bb0b63dc05 100644 --- a/src/apis/beyondcorp/v1alpha.ts +++ b/src/apis/beyondcorp/v1alpha.ts @@ -947,23 +947,6 @@ export namespace beyondcorp_v1alpha { * RemoteAgentDetails reflects the details of a remote agent. */ export interface Schema$GoogleCloudBeyondcorpAppconnectorsV1alphaRemoteAgentDetails {} - /** - * Request report the connector status. - */ - export interface Schema$GoogleCloudBeyondcorpAppconnectorsV1alphaReportStatusRequest { - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string | null; - /** - * Required. Resource info of the connector. - */ - resourceInfo?: Schema$GoogleCloudBeyondcorpAppconnectorsV1alphaResourceInfo; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean | null; - } /** * Response message for BeyondCorp.ResolveInstanceConfig. */ @@ -2119,23 +2102,6 @@ export namespace beyondcorp_v1alpha { * RemoteAgentDetails reflects the details of a remote agent. */ export interface Schema$RemoteAgentDetails {} - /** - * Request report the connector status. - */ - export interface Schema$ReportStatusRequest { - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string | null; - /** - * Required. Resource info of the connector. - */ - resourceInfo?: Schema$ResourceInfo; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean | null; - } /** * Response message for BeyondCorp.ResolveConnections. */ @@ -4901,176 +4867,6 @@ export namespace beyondcorp_v1alpha { this.context = context; } - /** - * Creates a new AppConnection in a given project and location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appConnections.create({ - * // Optional. User-settable AppConnection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - * appConnectionId: 'placeholder-value', - * // Required. The resource project name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "applicationEndpoint": {}, - * // "connectors": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "gateway": {}, - * // "labels": {}, - * // "name": "my_name", - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - create( - params: Params$Resource$Projects$Locations$Appconnections$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Appconnections$Create, - options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Appconnections$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Appconnections$Create, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Appconnections$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnections$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnections$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnections$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+parent}/appConnections').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - /** * Deletes a single AppConnection. * @example @@ -5676,7 +5472,7 @@ export namespace beyondcorp_v1alpha { } /** - * Updates the parameters of a single AppConnection. + * Resolves AppConnections details for a given AppConnector. An internal method called by a connector to find AppConnections to connect to. * @example * ```js * // Before running the sample: @@ -5705,47 +5501,23 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnections.patch({ - * // Optional. If set as true, will create the resource if it is not found. - * allowMissing: 'placeholder-value', - * // Required. Unique resource name of the AppConnection. The name is ignored when creating a AppConnection. - * name: 'projects/my-project/locations/my-location/appConnections/my-appConnection', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnection]: * `labels` * `display_name` * `application_endpoint` * `connectors` - * updateMask: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "applicationEndpoint": {}, - * // "connectors": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "gateway": {}, - * // "labels": {}, - * // "name": "my_name", - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await beyondcorp.projects.locations.appConnections.resolve({ + * // Required. BeyondCorp Connector name of the connector associated with those AppConnections using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` + * appConnectorId: 'placeholder-value', + * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous ResolveAppConnectionsResponse, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "appConnectionDetails": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -5761,207 +5533,62 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Appconnections$Patch, + resolve( + params: Params$Resource$Projects$Locations$Appconnections$Resolve, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Appconnections$Patch, + resolve( + params?: Params$Resource$Projects$Locations$Appconnections$Resolve, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Appconnections$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + resolve( + params: Params$Resource$Projects$Locations$Appconnections$Resolve, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Appconnections$Patch, + resolve( + params: Params$Resource$Projects$Locations$Appconnections$Resolve, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Appconnections$Patch, - callback: BodyResponseCallback + resolve( + params: Params$Resource$Projects$Locations$Appconnections$Resolve, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + resolve( + callback: BodyResponseCallback ): void; - patch( + resolve( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnections$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appconnections$Resolve + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnections$Patch; + {}) as Params$Resource$Projects$Locations$Appconnections$Resolve; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnections$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Resolves AppConnections details for a given AppConnector. An internal method called by a connector to find AppConnections to connect to. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appConnections.resolve({ - * // Required. BeyondCorp Connector name of the connector associated with those AppConnections using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` - * appConnectorId: 'placeholder-value', - * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The next_page_token value returned from a previous ResolveAppConnectionsResponse, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "appConnectionDetails": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - resolve( - params: Params$Resource$Projects$Locations$Appconnections$Resolve, - options: StreamMethodOptions - ): Promise>; - resolve( - params?: Params$Resource$Projects$Locations$Appconnections$Resolve, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - resolve( - params: Params$Resource$Projects$Locations$Appconnections$Resolve, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - resolve( - params: Params$Resource$Projects$Locations$Appconnections$Resolve, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - resolve( - params: Params$Resource$Projects$Locations$Appconnections$Resolve, - callback: BodyResponseCallback - ): void; - resolve( - callback: BodyResponseCallback - ): void; - resolve( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnections$Resolve - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnections$Resolve; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Appconnections$Resolve; + params = + {} as Params$Resource$Projects$Locations$Appconnections$Resolve; options = {}; } @@ -6311,29 +5938,6 @@ export namespace beyondcorp_v1alpha { } } - export interface Params$Resource$Projects$Locations$Appconnections$Create extends StandardParameters { - /** - * Optional. User-settable AppConnection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - */ - appConnectionId?: string; - /** - * Required. The resource project name of the AppConnection location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectionsV1alphaAppConnection; - } export interface Params$Resource$Projects$Locations$Appconnections$Delete extends StandardParameters { /** * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnections/{app_connection_id\}` @@ -6386,33 +5990,6 @@ export namespace beyondcorp_v1alpha { */ parent?: string; } - export interface Params$Resource$Projects$Locations$Appconnections$Patch extends StandardParameters { - /** - * Optional. If set as true, will create the resource if it is not found. - */ - allowMissing?: boolean; - /** - * Required. Unique resource name of the AppConnection. The name is ignored when creating a AppConnection. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if the original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnection]: * `labels` * `display_name` * `application_endpoint` * `connectors` - */ - updateMask?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectionsV1alphaAppConnection; - } export interface Params$Resource$Projects$Locations$Appconnections$Resolve extends StandardParameters { /** * Required. BeyondCorp Connector name of the connector associated with those AppConnections using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` @@ -6461,7 +6038,7 @@ export namespace beyondcorp_v1alpha { } /** - * Creates a new AppConnector in a given project and location. + * Deletes a single AppConnector. * @example * ```js * // Before running the sample: @@ -6490,31 +6067,13 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.create({ - * // Optional. User-settable AppConnector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - * appConnectorId: 'placeholder-value', - * // Required. The resource project name of the AppConnector location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * const res = await beyondcorp.projects.locations.appConnectors.delete({ + * // Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` + * name: 'projects/my-project/locations/my-location/appConnectors/my-appConnector', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). * requestId: 'placeholder-value', * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "name": "my_name", - * // "principalInfo": {}, - * // "resourceInfo": {}, - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, * }); * console.log(res.data); * @@ -6540,35 +6099,35 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params: Params$Resource$Projects$Locations$Appconnectors$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params?: Params$Resource$Projects$Locations$Appconnectors$Delete, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params: Params$Resource$Projects$Locations$Appconnectors$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params: Params$Resource$Projects$Locations$Appconnectors$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Appconnectors$Create, + delete( + params: Params$Resource$Projects$Locations$Appconnectors$Delete, callback: BodyResponseCallback ): void; - create( + delete( callback: BodyResponseCallback ): void; - create( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Create + | Params$Resource$Projects$Locations$Appconnectors$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -6584,12 +6143,12 @@ export namespace beyondcorp_v1alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Create; + {}) as Params$Resource$Projects$Locations$Appconnectors$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnectors$Create; + params = {} as Params$Resource$Projects$Locations$Appconnectors$Delete; options = {}; } @@ -6602,18 +6161,15 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+parent}/appConnectors').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -6627,7 +6183,7 @@ export namespace beyondcorp_v1alpha { } /** - * Deletes a single AppConnector. + * Gets details of a single AppConnector. * @example * ```js * // Before running the sample: @@ -6656,162 +6212,17 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.delete({ + * const res = await beyondcorp.projects.locations.appConnectors.get({ * // Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` * name: 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - delete( - params: Params$Resource$Projects$Locations$Appconnectors$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Appconnectors$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Appconnectors$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Appconnectors$Delete, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Appconnectors$Delete, - callback: BodyResponseCallback - ): void; - delete( - callback: BodyResponseCallback - ): void; - delete( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnectors$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets details of a single AppConnector. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.get({ - * // Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` - * name: 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "labels": {}, * // "name": "my_name", * // "principalInfo": {}, * // "resourceInfo": {}, @@ -7227,7 +6638,7 @@ export namespace beyondcorp_v1alpha { } /** - * Updates the parameters of a single AppConnector. + * Gets instance configuration for a given AppConnector. An internal method called by a AppConnector to get its container config. * @example * ```js * // Before running the sample: @@ -7256,41 +6667,17 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.patch({ - * // Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector. - * name: 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnector]: * `labels` * `display_name` - * updateMask: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "name": "my_name", - * // "principalInfo": {}, - * // "resourceInfo": {}, - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await beyondcorp.projects.locations.appConnectors.resolveInstanceConfig({ + * // Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector\}` + * appConnector: + * 'projects/my-project/locations/my-location/appConnectors/my-appConnector', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "instanceConfig": {} * // } * } * @@ -7306,56 +6693,62 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Appconnectors$Patch, + resolveInstanceConfig( + params: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Appconnectors$Patch, + resolveInstanceConfig( + params?: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Appconnectors$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + resolveInstanceConfig( + params: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Appconnectors$Patch, + resolveInstanceConfig( + params: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Appconnectors$Patch, - callback: BodyResponseCallback + resolveInstanceConfig( + params: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + resolveInstanceConfig( + callback: BodyResponseCallback ): void; - patch( + resolveInstanceConfig( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Patch; + {}) as Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appconnectors$Patch; + params = + {} as Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig; options = {}; } @@ -7368,29 +6761,33 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: ( + rootUrl + '/v1alpha/{+appConnector}:resolveInstanceConfig' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['appConnector'], + pathParams: ['appConnector'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Report status for a given connector. + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. * @example * ```js * // Before running the sample: @@ -7419,18 +6816,17 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.reportStatus({ - * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector\}` - * appConnector: + * const res = await beyondcorp.projects.locations.appConnectors.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: * 'projects/my-project/locations/my-location/appConnectors/my-appConnector', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "requestId": "my_requestId", - * // "resourceInfo": {}, - * // "validateOnly": false + * // "policy": {}, + * // "updateMask": "my_updateMask" * // } * }, * }); @@ -7438,11 +6834,10 @@ export namespace beyondcorp_v1alpha { * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -7458,57 +6853,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reportStatus( - params: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, + setIamPolicy( + params: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, options: StreamMethodOptions ): Promise>; - reportStatus( - params?: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, options?: MethodOptions - ): Promise>; - reportStatus( - params: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportStatus( - params: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - reportStatus( - params: Params$Resource$Projects$Locations$Appconnectors$Reportstatus, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, + callback: BodyResponseCallback ): void; - reportStatus( - callback: BodyResponseCallback + setIamPolicy( + callback: BodyResponseCallback ): void; - reportStatus( + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Reportstatus - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appconnectors$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Reportstatus; + {}) as Params$Resource$Projects$Locations$Appconnectors$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Appconnectors$Reportstatus; + {} as Params$Resource$Projects$Locations$Appconnectors$Setiampolicy; options = {}; } @@ -7521,7 +6915,7 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+appConnector}:reportStatus').replace( + url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), @@ -7531,22 +6925,22 @@ export namespace beyondcorp_v1alpha { options ), params, - requiredParams: ['appConnector'], - pathParams: ['appConnector'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets instance configuration for a given AppConnector. An internal method called by a AppConnector to get its container config. + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. * @example * ```js * // Before running the sample: @@ -7576,16 +6970,24 @@ export namespace beyondcorp_v1alpha { * * // Do the magic * const res = - * await beyondcorp.projects.locations.appConnectors.resolveInstanceConfig({ - * // Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector\}` - * appConnector: + * await beyondcorp.projects.locations.appConnectors.testIamPermissions({ + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: * 'projects/my-project/locations/my-location/appConnectors/my-appConnector', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "instanceConfig": {} + * // "permissions": [] * // } * } * @@ -7601,62 +7003,62 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resolveInstanceConfig( - params: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, + testIamPermissions( + params: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, options: StreamMethodOptions ): Promise>; - resolveInstanceConfig( - params?: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - resolveInstanceConfig( - params: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, + testIamPermissions( + params: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resolveInstanceConfig( - params: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, + testIamPermissions( + params: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resolveInstanceConfig( - params: Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, + callback: BodyResponseCallback ): void; - resolveInstanceConfig( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - resolveInstanceConfig( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appconnectors$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig; + {}) as Params$Resource$Projects$Locations$Appconnectors$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig; + {} as Params$Resource$Projects$Locations$Appconnectors$Testiampermissions; options = {}; } @@ -7669,33 +7071,122 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1alpha/{+appConnector}:resolveInstanceConfig' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1alpha/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['appConnector'], - pathParams: ['appConnector'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } + } + export interface Params$Resource$Projects$Locations$Appconnectors$Delete extends StandardParameters { /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Appconnectors$Get extends StandardParameters { + /** + * Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Appconnectors$Getiampolicy extends StandardParameters { + /** + * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Appconnectors$List extends StandardParameters { + /** + * Optional. A filter specifying constraints of a list operation. + */ + filter?: string; + /** + * Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + */ + pageSize?: number; + /** + * Optional. The next_page_token value returned from a previous ListAppConnectorsRequest, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the AppConnector location using the form: `projects/{project_id\}/locations/{location_id\}` + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig extends StandardParameters { + /** + * Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector\}` + */ + appConnector?: string; + } + export interface Params$Resource$Projects$Locations$Appconnectors$Setiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Appconnectors$Testiampermissions extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Appgateways { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes a single AppGateway. * @example * ```js * // Before running the sample: @@ -7724,28 +7215,23 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.appConnectors.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, + * const res = await beyondcorp.projects.locations.appGateways.delete({ + * // Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` + * name: 'projects/my-project/locations/my-location/appGateways/my-appGateway', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. + * validateOnly: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -7761,1422 +7247,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, + delete( + params: Params$Resource$Projects$Locations$Appgateways$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, + delete( + params?: Params$Resource$Projects$Locations$Appgateways$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Appgateways$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Appconnectors$Setiampolicy, - callback: BodyResponseCallback - ): void; - setIamPolicy( - callback: BodyResponseCallback - ): void; - setIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Setiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Setiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Appconnectors$Setiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await beyondcorp.projects.locations.appConnectors.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/appConnectors/my-appConnector', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - testIamPermissions( - params: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Appconnectors$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appconnectors$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appconnectors$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Appconnectors$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - } - - export interface Params$Resource$Projects$Locations$Appconnectors$Create extends StandardParameters { - /** - * Optional. User-settable AppConnector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - */ - appConnectorId?: string; - /** - * Required. The resource project name of the AppConnector location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectorsV1alphaAppConnector; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Delete extends StandardParameters { - /** - * Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Get extends StandardParameters { - /** - * Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector_id\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Getiampolicy extends StandardParameters { - /** - * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ - 'options.requestedPolicyVersion'?: number; - /** - * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - } - export interface Params$Resource$Projects$Locations$Appconnectors$List extends StandardParameters { - /** - * Optional. A filter specifying constraints of a list operation. - */ - filter?: string; - /** - * Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. - */ - orderBy?: string; - /** - * Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - */ - pageSize?: number; - /** - * Optional. The next_page_token value returned from a previous ListAppConnectorsRequest, if any. - */ - pageToken?: string; - /** - * Required. The resource name of the AppConnector location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Patch extends StandardParameters { - /** - * Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.AppConnector]: * `labels` * `display_name` - */ - updateMask?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectorsV1alphaAppConnector; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Reportstatus extends StandardParameters { - /** - * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector\}` - */ - appConnector?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleCloudBeyondcorpAppconnectorsV1alphaReportStatusRequest; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Resolveinstanceconfig extends StandardParameters { - /** - * Required. BeyondCorp AppConnector name using the form: `projects/{project_id\}/locations/{location_id\}/appConnectors/{app_connector\}` - */ - appConnector?: string; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Setiampolicy extends StandardParameters { - /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Appconnectors$Testiampermissions extends StandardParameters { - /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Appgateways { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Creates a new AppGateway in a given project and location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appGateways.create({ - * // Optional. User-settable AppGateway resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - * appGatewayId: 'placeholder-value', - * // Required. The resource project name of the AppGateway location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allocatedConnections": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "hostType": "my_hostType", - * // "labels": {}, - * // "name": "my_name", - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime", - * // "uri": "my_uri" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - create( - params: Params$Resource$Projects$Locations$Appgateways$Create, - options: StreamMethodOptions - ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Appgateways$Create, - options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Appgateways$Create, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Appgateways$Create, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Appgateways$Create, - callback: BodyResponseCallback - ): void; - create( - callback: BodyResponseCallback - ): void; - create( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appgateways$Create - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appgateways$Create; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appgateways$Create; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+parent}/appGateways').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes a single AppGateway. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appGateways.delete({ - * // Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` - * name: 'projects/my-project/locations/my-location/appGateways/my-appGateway', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - delete( - params: Params$Resource$Projects$Locations$Appgateways$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Appgateways$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Appgateways$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Appgateways$Delete, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Projects$Locations$Appgateways$Delete, - callback: BodyResponseCallback - ): void; - delete( - callback: BodyResponseCallback - ): void; - delete( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appgateways$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appgateways$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appgateways$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets details of a single AppGateway. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appGateways.get({ - * // Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` - * name: 'projects/my-project/locations/my-location/appGateways/my-appGateway', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "allocatedConnections": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "hostType": "my_hostType", - * // "labels": {}, - * // "name": "my_name", - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime", - * // "uri": "my_uri" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - get( - params: Params$Resource$Projects$Locations$Appgateways$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Appgateways$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Appgateways$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Appgateways$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Appgateways$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appgateways$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appgateways$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appgateways$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appGateways.getIamPolicy({ - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - * 'options.requestedPolicyVersion': 'placeholder-value', - * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/appGateways/my-appGateway', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - getIamPolicy( - params: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy( - callback: BodyResponseCallback - ): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appgateways$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appgateways$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Appgateways$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists AppGateways in a given project and location. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appGateways.list({ - * // Optional. A filter specifying constraints of a list operation. - * filter: 'placeholder-value', - * // Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The next_page_token value returned from a previous ListAppGatewaysRequest, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the AppGateway location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "appGateways": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - list( - params: Params$Resource$Projects$Locations$Appgateways$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Appgateways$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Appgateways$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Appgateways$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Appgateways$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appgateways$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appgateways$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Appgateways$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+parent}/appGateways').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await beyondcorp.projects.locations.appGateways.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/appGateways/my-appGateway', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - setIamPolicy( - params: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, - options: StreamMethodOptions - ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, - options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, - callback: BodyResponseCallback - ): void; - setIamPolicy( - callback: BodyResponseCallback - ): void; - setIamPolicy( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Appgateways$Setiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appgateways$Setiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Appgateways$Setiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/beyondcorp.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const beyondcorp = google.beyondcorp('v1alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await beyondcorp.projects.locations.appGateways.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/appGateways/my-appGateway', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - testIamPermissions( - params: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, + delete( + params: Params$Resource$Projects$Locations$Appgateways$Delete, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Appgateways$Delete, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + delete( + callback: BodyResponseCallback ): void; - testIamPermissions( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Appgateways$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appgateways$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Appgateways$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Appgateways$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Appgateways$Testiampermissions; + params = {} as Params$Resource$Projects$Locations$Appgateways$Delete; options = {}; } @@ -9189,139 +7309,29 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Appgateways$Create extends StandardParameters { - /** - * Optional. User-settable AppGateway resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - */ - appGatewayId?: string; - /** - * Required. The resource project name of the AppGateway location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$AppGateway; - } - export interface Params$Resource$Projects$Locations$Appgateways$Delete extends StandardParameters { - /** - * Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - } - export interface Params$Resource$Projects$Locations$Appgateways$Get extends StandardParameters { - /** - * Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Appgateways$Getiampolicy extends StandardParameters { - /** - * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ - 'options.requestedPolicyVersion'?: number; - /** - * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - } - export interface Params$Resource$Projects$Locations$Appgateways$List extends StandardParameters { - /** - * Optional. A filter specifying constraints of a list operation. - */ - filter?: string; - /** - * Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. - */ - orderBy?: string; - /** - * Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - */ - pageSize?: number; - /** - * Optional. The next_page_token value returned from a previous ListAppGatewaysRequest, if any. - */ - pageToken?: string; - /** - * Required. The resource name of the AppGateway location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Appgateways$Setiampolicy extends StandardParameters { - /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Appgateways$Testiampermissions extends StandardParameters { - /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Applicationdomains { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * Gets details of a single AppGateway. * @example * ```js * // Before running the sample: @@ -9350,22 +7360,27 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await beyondcorp.projects.locations.applicationDomains.getIamPolicy({ - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - * 'options.requestedPolicyVersion': 'placeholder-value', - * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/applicationDomains/my-applicationDomain', - * }); + * const res = await beyondcorp.projects.locations.appGateways.get({ + * // Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` + * name: 'projects/my-project/locations/my-location/appGateways/my-appGateway', + * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "allocatedConnections": [], + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "hostType": "my_hostType", + * // "labels": {}, + * // "name": "my_name", + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "state": "my_state", + * // "type": "my_type", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime", + * // "uri": "my_uri" * // } * } * @@ -9381,56 +7396,52 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, + get( + params: Params$Resource$Projects$Locations$Appgateways$Get, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, + get( + params?: Params$Resource$Projects$Locations$Appgateways$Get, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Appgateways$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Appgateways$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Appgateways$Get, + callback: BodyResponseCallback ): void; - getIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appgateways$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Appgateways$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Appgateways$Get; options = {}; } @@ -9443,32 +7454,29 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -9497,21 +7505,13 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await beyondcorp.projects.locations.applicationDomains.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/applicationDomains/my-applicationDomain', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }); + * const res = await beyondcorp.projects.locations.appGateways.getIamPolicy({ + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/appGateways/my-appGateway', + * }); * console.log(res.data); * * // Example response @@ -9535,34 +7535,34 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, options?: MethodOptions ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Appgateways$Getiampolicy, callback: BodyResponseCallback ): void; - setIamPolicy( + getIamPolicy( callback: BodyResponseCallback ): void; - setIamPolicy( + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy + | Params$Resource$Projects$Locations$Appgateways$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -9578,13 +7578,13 @@ export namespace beyondcorp_v1alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Appgateways$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy; + {} as Params$Resource$Projects$Locations$Appgateways$Getiampolicy; options = {}; } @@ -9597,11 +7597,11 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -9622,7 +7622,7 @@ export namespace beyondcorp_v1alpha { } /** - * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. + * Lists AppGateways in a given project and location. * @example * ```js * // Before running the sample: @@ -9651,25 +7651,25 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await beyondcorp.projects.locations.applicationDomains.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/applicationDomains/my-applicationDomain', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); + * const res = await beyondcorp.projects.locations.appGateways.list({ + * // Optional. A filter specifying constraints of a list operation. + * filter: 'placeholder-value', + * // Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous ListAppGatewaysRequest, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the AppGateway location using the form: `projects/{project_id\}/locations/{location_id\}` + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "appGateways": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -9685,62 +7685,54 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, + list( + params: Params$Resource$Projects$Locations$Appgateways$List, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, + list( + params?: Params$Resource$Projects$Locations$Appgateways$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Appgateways$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, + list( + params: Params$Resource$Projects$Locations$Appgateways$List, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Appgateways$List, + callback: BodyResponseCallback ): void; - testIamPermissions( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appgateways$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Appgateways$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions; + params = {} as Params$Resource$Projects$Locations$Appgateways$List; options = {}; } @@ -9751,76 +7743,34 @@ export namespace beyondcorp_v1alpha { const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - } - - export interface Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy extends StandardParameters { - /** - * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ - 'options.requestedPolicyVersion'?: number; - /** - * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - } - export interface Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy extends StandardParameters { - /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions extends StandardParameters { - /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Applications { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+parent}/appGateways').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. * @example * ```js * // Before running the sample: @@ -9849,12 +7799,19 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.applications.getIamPolicy({ - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - * 'options.requestedPolicyVersion': 'placeholder-value', - * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * const res = await beyondcorp.projects.locations.appGateways.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: - * 'projects/my-project/locations/my-location/applications/my-application', + * 'projects/my-project/locations/my-location/appGateways/my-appGateway', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, * }); * console.log(res.data); * @@ -9879,34 +7836,34 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Projects$Locations$Applications$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Applications$Getiampolicy, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, options?: MethodOptions ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Applications$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Applications$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Applications$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Appgateways$Setiampolicy, callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Applications$Getiampolicy + | Params$Resource$Projects$Locations$Appgateways$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -9922,13 +7879,13 @@ export namespace beyondcorp_v1alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Applications$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Appgateways$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Applications$Getiampolicy; + {} as Params$Resource$Projects$Locations$Appgateways$Setiampolicy; options = {}; } @@ -9941,11 +7898,11 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -9966,7 +7923,7 @@ export namespace beyondcorp_v1alpha { } /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. * @example * ```js * // Before running the sample: @@ -9995,28 +7952,25 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.applications.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/applications/my-application', + * const res = + * await beyondcorp.projects.locations.appGateways.testIamPermissions({ + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/appGateways/my-appGateway', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -10032,94 +7986,184 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Projects$Locations$Applications$Setiampolicy, + testIamPermissions( + params: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Applications$Setiampolicy, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Applications$Setiampolicy, + ): Promise< + GaxiosResponseWithHTTP2 + >; + testIamPermissions( + params: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Applications$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Applications$Setiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Appgateways$Testiampermissions, + callback: BodyResponseCallback ): void; - setIamPolicy( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - setIamPolicy( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Applications$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Appgateways$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Applications$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Appgateways$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Applications$Setiampolicy; + {} as Params$Resource$Projects$Locations$Appgateways$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; options = {}; } - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Appgateways$Delete extends StandardParameters { + /** + * Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Appgateways$Get extends StandardParameters { + /** + * Required. BeyondCorp AppGateway name using the form: `projects/{project_id\}/locations/{location_id\}/appGateways/{app_gateway_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Appgateways$Getiampolicy extends StandardParameters { + /** + * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Appgateways$List extends StandardParameters { + /** + * Optional. A filter specifying constraints of a list operation. + */ + filter?: string; + /** + * Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + */ + pageSize?: number; + /** + * Optional. The next_page_token value returned from a previous ListAppGatewaysRequest, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the AppGateway location using the form: `projects/{project_id\}/locations/{location_id\}` + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Appgateways$Setiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Appgateways$Testiampermissions extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; - const rootUrl = options.rootUrl || 'https://beyondcorp.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Applicationdomains { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -10149,24 +8193,21 @@ export namespace beyondcorp_v1alpha { * * // Do the magic * const res = - * await beyondcorp.projects.locations.applications.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * await beyondcorp.projects.locations.applicationDomains.getIamPolicy({ + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: - * 'projects/my-project/locations/my-location/applications/my-application', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * 'projects/my-project/locations/my-location/applicationDomains/my-applicationDomain', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -10182,62 +8223,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Projects$Locations$Applications$Testiampermissions, + getIamPolicy( + params: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Applications$Testiampermissions, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Applications$Testiampermissions, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Applications$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Applications$Testiampermissions, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + getIamPolicy( + callback: BodyResponseCallback ): void; - testIamPermissions( + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Applications$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Applications$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Applications$Testiampermissions; + {} as Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy; options = {}; } @@ -10250,11 +8285,11 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+resource}:testIamPermissions').replace( + url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -10265,59 +8300,17 @@ export namespace beyondcorp_v1alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Applications$Getiampolicy extends StandardParameters { - /** - * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ - 'options.requestedPolicyVersion'?: number; - /** - * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - } - export interface Params$Resource$Projects$Locations$Applications$Setiampolicy extends StandardParameters { - /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Applications$Testiampermissions extends StandardParameters { - /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Connections { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new Connection in a given project and location. + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. * @example * ```js * // Before running the sample: @@ -10346,43 +8339,29 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connections.create({ - * // Optional. User-settable connection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - * connectionId: 'placeholder-value', - * // Required. The resource project name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', + * const res = + * await beyondcorp.projects.locations.applicationDomains.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/applicationDomains/my-applicationDomain', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "applicationEndpoint": {}, - * // "connectors": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "gateway": {}, - * // "labels": {}, - * // "name": "my_name", - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -10398,56 +8377,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Connections$Create, + setIamPolicy( + params: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Connections$Create, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Connections$Create, + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Connections$Create, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Connections$Create, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + setIamPolicy( + callback: BodyResponseCallback ): void; - create( + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connections$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connections$Create; + {}) as Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connections$Create; + params = + {} as Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy; options = {}; } @@ -10460,7 +8439,7 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+parent}/connections').replace( + url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), @@ -10470,22 +8449,22 @@ export namespace beyondcorp_v1alpha { options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single Connection. + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. * @example * ```js * // Before running the sample: @@ -10514,23 +8493,25 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connections.delete({ - * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connections/{connection_id\}` - * name: 'projects/my-project/locations/my-location/connections/my-connection', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * }); + * const res = + * await beyondcorp.projects.locations.applicationDomains.testIamPermissions({ + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/applicationDomains/my-applicationDomain', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "permissions": [] * // } * } * @@ -10546,56 +8527,62 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Projects$Locations$Connections$Delete, + testIamPermissions( + params: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Connections$Delete, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Connections$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + testIamPermissions( + params: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Connections$Delete, + testIamPermissions( + params: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Connections$Delete, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - delete( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connections$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connections$Delete; + {}) as Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connections$Delete; + params = + {} as Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions; options = {}; } @@ -10608,29 +8595,74 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1alpha/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Applicationdomains$Getiampolicy extends StandardParameters { /** - * Gets details of a single Connection. + * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Applicationdomains$Setiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Applicationdomains$Testiampermissions extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Applications { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -10659,25 +8691,21 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connections.get({ - * // Required. BeyondCorp Connection name using the form: `projects/{project_id\}/locations/{location_id\}/connections/{connection_id\}` - * name: 'projects/my-project/locations/my-location/connections/my-connection', + * const res = await beyondcorp.projects.locations.applications.getIamPolicy({ + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/applications/my-application', * }); * console.log(res.data); * * // Example response * // { - * // "applicationEndpoint": {}, - * // "connectors": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "gateway": {}, - * // "labels": {}, - * // "name": "my_name", - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -10693,52 +8721,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Connections$Get, + getIamPolicy( + params: Params$Resource$Projects$Locations$Applications$Getiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Connections$Get, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Applications$Getiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Connections$Get, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Applications$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Connections$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Applications$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Connections$Get, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Applications$Getiampolicy, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connections$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Applications$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connections$Get; + {}) as Params$Resource$Projects$Locations$Applications$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connections$Get; + params = + {} as Params$Resource$Projects$Locations$Applications$Getiampolicy; options = {}; } @@ -10751,29 +8783,32 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. * @example * ```js * // Before running the sample: @@ -10802,12 +8837,19 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connections.getIamPolicy({ - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - * 'options.requestedPolicyVersion': 'placeholder-value', - * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * const res = await beyondcorp.projects.locations.applications.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: - * 'projects/my-project/locations/my-location/connections/my-connection', + * 'projects/my-project/locations/my-location/applications/my-application', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, * }); * console.log(res.data); * @@ -10832,34 +8874,34 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Projects$Locations$Connections$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Applications$Setiampolicy, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Connections$Getiampolicy, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Applications$Setiampolicy, options?: MethodOptions ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Connections$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Applications$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Connections$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Applications$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Connections$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Applications$Setiampolicy, callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connections$Getiampolicy + | Params$Resource$Projects$Locations$Applications$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -10875,13 +8917,13 @@ export namespace beyondcorp_v1alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connections$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Applications$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Connections$Getiampolicy; + {} as Params$Resource$Projects$Locations$Applications$Setiampolicy; options = {}; } @@ -10894,11 +8936,11 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -10919,7 +8961,7 @@ export namespace beyondcorp_v1alpha { } /** - * Lists Connections in a given project and location. + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. * @example * ```js * // Before running the sample: @@ -10948,25 +8990,25 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connections.list({ - * // Optional. A filter specifying constraints of a list operation. - * filter: 'placeholder-value', - * // Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The next_page_token value returned from a previous ListConnectionsRequest, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await beyondcorp.projects.locations.applications.testIamPermissions({ + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/applications/my-application', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "connections": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "permissions": [] * // } * } * @@ -10982,54 +9024,62 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Connections$List, + testIamPermissions( + params: Params$Resource$Projects$Locations$Applications$Testiampermissions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Connections$List, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Applications$Testiampermissions, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Connections$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + testIamPermissions( + params: Params$Resource$Projects$Locations$Applications$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Connections$List, + testIamPermissions( + params: Params$Resource$Projects$Locations$Applications$Testiampermissions, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Connections$List, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Applications$Testiampermissions, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connections$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Applications$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connections$List; + {}) as Params$Resource$Projects$Locations$Applications$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connections$List; + params = + {} as Params$Resource$Projects$Locations$Applications$Testiampermissions; options = {}; } @@ -11042,32 +9092,74 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+parent}/connections').replace( + url: (rootUrl + '/v1alpha/{+resource}:testIamPermissions').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + + export interface Params$Resource$Projects$Locations$Applications$Getiampolicy extends StandardParameters { + /** + * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Applications$Setiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Applications$Testiampermissions extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Connections { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Updates the parameters of a single Connection. + * Deletes a single Connection. * @example * ```js * // Before running the sample: @@ -11096,35 +9188,13 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connections.patch({ - * // Optional. If set as true, will create the resource if it is not found. - * allowMissing: 'placeholder-value', - * // Required. Unique resource name of the connection. The name is ignored when creating a connection. + * const res = await beyondcorp.projects.locations.connections.delete({ + * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connections/{connection_id\}` * name: 'projects/my-project/locations/my-location/connections/my-connection', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). * requestId: 'placeholder-value', - * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.Connection]: * `labels` * `display_name` * `application_endpoint` * `connectors` - * updateMask: 'placeholder-value', * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "applicationEndpoint": {}, - * // "connectors": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "gateway": {}, - * // "labels": {}, - * // "name": "my_name", - * // "state": "my_state", - * // "type": "my_type", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, * }); * console.log(res.data); * @@ -11150,35 +9220,35 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Connections$Patch, + delete( + params: Params$Resource$Projects$Locations$Connections$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Connections$Patch, + delete( + params?: Params$Resource$Projects$Locations$Connections$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Connections$Patch, + delete( + params: Params$Resource$Projects$Locations$Connections$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Connections$Patch, + delete( + params: Params$Resource$Projects$Locations$Connections$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Connections$Patch, + delete( + params: Params$Resource$Projects$Locations$Connections$Delete, callback: BodyResponseCallback ): void; - patch( + delete( callback: BodyResponseCallback ): void; - patch( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connections$Patch + | Params$Resource$Projects$Locations$Connections$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -11194,12 +9264,12 @@ export namespace beyondcorp_v1alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connections$Patch; + {}) as Params$Resource$Projects$Locations$Connections$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connections$Patch; + params = {} as Params$Resource$Projects$Locations$Connections$Delete; options = {}; } @@ -11213,7 +9283,7 @@ export namespace beyondcorp_v1alpha { options: Object.assign( { url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -11234,7 +9304,7 @@ export namespace beyondcorp_v1alpha { } /** - * Resolves connections details for a given connector. An internal method called by a connector to find connections to connect to. + * Gets details of a single Connection. * @example * ```js * // Before running the sample: @@ -11263,23 +9333,25 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connections.resolve({ - * // Required. BeyondCorp Connector name of the connector associated with those connections using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` - * connectorId: 'placeholder-value', - * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The next_page_token value returned from a previous ResolveConnectionsResponse, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', + * const res = await beyondcorp.projects.locations.connections.get({ + * // Required. BeyondCorp Connection name using the form: `projects/{project_id\}/locations/{location_id\}/connections/{connection_id\}` + * name: 'projects/my-project/locations/my-location/connections/my-connection', * }); * console.log(res.data); * * // Example response * // { - * // "connectionDetails": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "applicationEndpoint": {}, + * // "connectors": [], + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "gateway": {}, + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state", + * // "type": "my_type", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" * // } * } * @@ -11295,56 +9367,52 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resolve( - params: Params$Resource$Projects$Locations$Connections$Resolve, + get( + params: Params$Resource$Projects$Locations$Connections$Get, options: StreamMethodOptions ): Promise>; - resolve( - params?: Params$Resource$Projects$Locations$Connections$Resolve, + get( + params?: Params$Resource$Projects$Locations$Connections$Get, options?: MethodOptions - ): Promise>; - resolve( - params: Params$Resource$Projects$Locations$Connections$Resolve, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Connections$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resolve( - params: Params$Resource$Projects$Locations$Connections$Resolve, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - resolve( - params: Params$Resource$Projects$Locations$Connections$Resolve, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Connections$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resolve( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Connections$Get, + callback: BodyResponseCallback ): void; - resolve( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connections$Resolve - | BodyResponseCallback + | Params$Resource$Projects$Locations$Connections$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connections$Resolve; + {}) as Params$Resource$Projects$Locations$Connections$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connections$Resolve; + params = {} as Params$Resource$Projects$Locations$Connections$Get; options = {}; } @@ -11357,32 +9425,29 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+parent}/connections:resolve').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -11411,19 +9476,12 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connections.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * const res = await beyondcorp.projects.locations.connections.getIamPolicy({ + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: * 'projects/my-project/locations/my-location/connections/my-connection', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, * }); * console.log(res.data); * @@ -11448,34 +9506,34 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Projects$Locations$Connections$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Connections$Getiampolicy, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Connections$Setiampolicy, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Connections$Getiampolicy, options?: MethodOptions ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Connections$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Connections$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Connections$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Connections$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Connections$Setiampolicy, + getIamPolicy( + params: Params$Resource$Projects$Locations$Connections$Getiampolicy, callback: BodyResponseCallback ): void; - setIamPolicy( + getIamPolicy( callback: BodyResponseCallback ): void; - setIamPolicy( + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connections$Setiampolicy + | Params$Resource$Projects$Locations$Connections$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -11491,13 +9549,13 @@ export namespace beyondcorp_v1alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connections$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Connections$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Connections$Setiampolicy; + {} as Params$Resource$Projects$Locations$Connections$Getiampolicy; options = {}; } @@ -11510,171 +9568,32 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', - }, - options - ), - params, - requiredParams: ['resource'], - pathParams: ['resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Projects$Locations$Connections$Create extends StandardParameters { - /** - * Optional. User-settable connection resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - */ - connectionId?: string; - /** - * Required. The resource project name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$Connection; - } - export interface Params$Resource$Projects$Locations$Connections$Delete extends StandardParameters { - /** - * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connections/{connection_id\}` - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - } - export interface Params$Resource$Projects$Locations$Connections$Get extends StandardParameters { - /** - * Required. BeyondCorp Connection name using the form: `projects/{project_id\}/locations/{location_id\}/connections/{connection_id\}` - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Connections$Getiampolicy extends StandardParameters { - /** - * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ - 'options.requestedPolicyVersion'?: number; - /** - * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - } - export interface Params$Resource$Projects$Locations$Connections$List extends StandardParameters { - /** - * Optional. A filter specifying constraints of a list operation. - */ - filter?: string; - /** - * Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. - */ - orderBy?: string; - /** - * Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - */ - pageSize?: number; - /** - * Optional. The next_page_token value returned from a previous ListConnectionsRequest, if any. - */ - pageToken?: string; - /** - * Required. The resource name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Connections$Patch extends StandardParameters { - /** - * Optional. If set as true, will create the resource if it is not found. - */ - allowMissing?: boolean; - /** - * Required. Unique resource name of the connection. The name is ignored when creating a connection. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.Connection]: * `labels` * `display_name` * `application_endpoint` * `connectors` - */ - updateMask?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$Connection; - } - export interface Params$Resource$Projects$Locations$Connections$Resolve extends StandardParameters { - /** - * Required. BeyondCorp Connector name of the connector associated with those connections using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` - */ - connectorId?: string; - /** - * Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - */ - pageSize?: number; - /** - * Optional. The next_page_token value returned from a previous ResolveConnectionsResponse, if any. - */ - pageToken?: string; - /** - * Required. The resource name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Connections$Setiampolicy extends StandardParameters { - /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; - } - - export class Resource$Projects$Locations$Connectors { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Creates a new Connector in a given project and location. + * Lists Connections in a given project and location. * @example * ```js * // Before running the sample: @@ -11703,41 +9622,25 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connectors.create({ - * // Optional. User-settable connector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - * connectorId: 'placeholder-value', - * // Required. The resource project name of the connector location using the form: `projects/{project_id\}/locations/{location_id\}` + * const res = await beyondcorp.projects.locations.connections.list({ + * // Optional. A filter specifying constraints of a list operation. + * filter: 'placeholder-value', + * // Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous ListConnectionsRequest, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "name": "my_name", - * // "principalInfo": {}, - * // "resourceInfo": {}, - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "connections": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -11753,56 +9656,54 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Connectors$Create, + list( + params: Params$Resource$Projects$Locations$Connections$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Connectors$Create, + list( + params?: Params$Resource$Projects$Locations$Connections$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Connectors$Create, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Connections$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Connectors$Create, + list( + params: Params$Resource$Projects$Locations$Connections$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - create( - params: Params$Resource$Projects$Locations$Connectors$Create, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Connections$List, + callback: BodyResponseCallback ): void; - create( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connectors$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Connections$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connectors$Create; + {}) as Params$Resource$Projects$Locations$Connections$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connectors$Create; + params = {} as Params$Resource$Projects$Locations$Connections$List; options = {}; } @@ -11815,11 +9716,11 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+parent}/connectors').replace( + url: (rootUrl + '/v1alpha/{+parent}/connections').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -11830,17 +9731,17 @@ export namespace beyondcorp_v1alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single Connector. + * Resolves connections details for a given connector. An internal method called by a connector to find connections to connect to. * @example * ```js * // Before running the sample: @@ -11869,23 +9770,23 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connectors.delete({ - * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` - * name: 'projects/my-project/locations/my-location/connectors/my-connector', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', + * const res = await beyondcorp.projects.locations.connections.resolve({ + * // Required. BeyondCorp Connector name of the connector associated with those connections using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` + * connectorId: 'placeholder-value', + * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous ResolveConnectionsResponse, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "connectionDetails": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -11901,56 +9802,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Projects$Locations$Connectors$Delete, + resolve( + params: Params$Resource$Projects$Locations$Connections$Resolve, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Connectors$Delete, + resolve( + params?: Params$Resource$Projects$Locations$Connections$Resolve, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Connectors$Delete, + ): Promise>; + resolve( + params: Params$Resource$Projects$Locations$Connections$Resolve, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Connectors$Delete, + resolve( + params: Params$Resource$Projects$Locations$Connections$Resolve, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Connectors$Delete, - callback: BodyResponseCallback + resolve( + params: Params$Resource$Projects$Locations$Connections$Resolve, + callback: BodyResponseCallback ): void; - delete( - callback: BodyResponseCallback + resolve( + callback: BodyResponseCallback ): void; - delete( + resolve( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connectors$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Connections$Resolve + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connectors$Delete; + {}) as Params$Resource$Projects$Locations$Connections$Resolve; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connectors$Delete; + params = {} as Params$Resource$Projects$Locations$Connections$Resolve; options = {}; } @@ -11963,29 +9864,32 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1alpha/{+parent}/connections:resolve').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets details of a single Connector. + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. * @example * ```js * // Before running the sample: @@ -12014,23 +9918,28 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connectors.get({ - * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` - * name: 'projects/my-project/locations/my-location/connectors/my-connector', + * const res = await beyondcorp.projects.locations.connections.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/connections/my-connection', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "name": "my_name", - * // "principalInfo": {}, - * // "resourceInfo": {}, - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -12046,52 +9955,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Connectors$Get, + setIamPolicy( + params: Params$Resource$Projects$Locations$Connections$Setiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Connectors$Get, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Connections$Setiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Connectors$Get, + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Connections$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Connectors$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Connections$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Connectors$Get, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Projects$Locations$Connections$Setiampolicy, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + setIamPolicy( + callback: BodyResponseCallback + ): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connectors$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Connections$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connectors$Get; + {}) as Params$Resource$Projects$Locations$Connections$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connectors$Get; + params = + {} as Params$Resource$Projects$Locations$Connections$Setiampolicy; options = {}; } @@ -12104,29 +10017,121 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1alpha/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Connections$Delete extends StandardParameters { /** - * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connections/{connection_id\}` + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. + */ + validateOnly?: boolean; + } + export interface Params$Resource$Projects$Locations$Connections$Get extends StandardParameters { + /** + * Required. BeyondCorp Connection name using the form: `projects/{project_id\}/locations/{location_id\}/connections/{connection_id\}` + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Connections$Getiampolicy extends StandardParameters { + /** + * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Connections$List extends StandardParameters { + /** + * Optional. A filter specifying constraints of a list operation. + */ + filter?: string; + /** + * Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + */ + pageSize?: number; + /** + * Optional. The next_page_token value returned from a previous ListConnectionsRequest, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Connections$Resolve extends StandardParameters { + /** + * Required. BeyondCorp Connector name of the connector associated with those connections using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` + */ + connectorId?: string; + /** + * Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + */ + pageSize?: number; + /** + * Optional. The next_page_token value returned from a previous ResolveConnectionsResponse, if any. + */ + pageToken?: string; + /** + * Required. The resource name of the connection location using the form: `projects/{project_id\}/locations/{location_id\}` + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Connections$Setiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + + export class Resource$Projects$Locations$Connectors { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes a single Connector. * @example * ```js * // Before running the sample: @@ -12155,21 +10160,23 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connectors.getIamPolicy({ - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - * 'options.requestedPolicyVersion': 'placeholder-value', - * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/connectors/my-connector', + * const res = await beyondcorp.projects.locations.connectors.delete({ + * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` + * name: 'projects/my-project/locations/my-location/connectors/my-connector', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. + * validateOnly: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -12185,56 +10192,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Projects$Locations$Connectors$Getiampolicy, + delete( + params: Params$Resource$Projects$Locations$Connectors$Delete, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Connectors$Getiampolicy, + delete( + params?: Params$Resource$Projects$Locations$Connectors$Delete, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Connectors$Getiampolicy, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Connectors$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Connectors$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Connectors$Delete, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Connectors$Getiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Connectors$Delete, + callback: BodyResponseCallback ): void; - getIamPolicy( - callback: BodyResponseCallback + delete( + callback: BodyResponseCallback ): void; - getIamPolicy( + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connectors$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Connectors$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connectors$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Connectors$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Connectors$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Connectors$Delete; options = {}; } @@ -12247,32 +10254,29 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists Connectors in a given project and location. + * Gets details of a single Connector. * @example * ```js * // Before running the sample: @@ -12301,25 +10305,23 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connectors.list({ - * // Optional. A filter specifying constraints of a list operation. - * filter: 'placeholder-value', - * // Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. - * pageSize: 'placeholder-value', - * // Optional. The next_page_token value returned from a previous ListConnectorsRequest, if any. - * pageToken: 'placeholder-value', - * // Required. The resource name of the connector location using the form: `projects/{project_id\}/locations/{location_id\}` - * parent: 'projects/my-project/locations/my-location', + * const res = await beyondcorp.projects.locations.connectors.get({ + * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` + * name: 'projects/my-project/locations/my-location/connectors/my-connector', * }); * console.log(res.data); * * // Example response * // { - * // "connectors": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "labels": {}, + * // "name": "my_name", + * // "principalInfo": {}, + * // "resourceInfo": {}, + * // "state": "my_state", + * // "uid": "my_uid", + * // "updateTime": "my_updateTime" * // } * } * @@ -12335,54 +10337,52 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Connectors$List, + get( + params: Params$Resource$Projects$Locations$Connectors$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Connectors$List, + get( + params?: Params$Resource$Projects$Locations$Connectors$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Connectors$List, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Connectors$Get, options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Connectors$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Connectors$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Connectors$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get( + params: Params$Resource$Projects$Locations$Connectors$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connectors$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Connectors$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connectors$List; + {}) as Params$Resource$Projects$Locations$Connectors$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connectors$List; + params = {} as Params$Resource$Projects$Locations$Connectors$Get; options = {}; } @@ -12395,32 +10395,29 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+parent}/connectors').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the parameters of a single Connector. + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. * @example * ```js * // Before running the sample: @@ -12449,41 +10446,21 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connectors.patch({ - * // Required. Unique resource name of the connector. The name is ignored when creating a connector. - * name: 'projects/my-project/locations/my-location/connectors/my-connector', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.Connector]: * `labels` * `display_name` - * updateMask: 'placeholder-value', - * // Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "labels": {}, - * // "name": "my_name", - * // "principalInfo": {}, - * // "resourceInfo": {}, - * // "state": "my_state", - * // "uid": "my_uid", - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await beyondcorp.projects.locations.connectors.getIamPolicy({ + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/connectors/my-connector', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -12499,56 +10476,56 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Connectors$Patch, + getIamPolicy( + params: Params$Resource$Projects$Locations$Connectors$Getiampolicy, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Connectors$Patch, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Connectors$Getiampolicy, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Connectors$Patch, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Connectors$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Connectors$Patch, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Connectors$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Connectors$Patch, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Connectors$Getiampolicy, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + getIamPolicy( + callback: BodyResponseCallback ): void; - patch( + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connectors$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Connectors$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connectors$Patch; + {}) as Params$Resource$Projects$Locations$Connectors$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Connectors$Patch; + params = + {} as Params$Resource$Projects$Locations$Connectors$Getiampolicy; options = {}; } @@ -12561,29 +10538,32 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1alpha/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Report status for a given connector. + * Lists Connectors in a given project and location. * @example * ```js * // Before running the sample: @@ -12612,30 +10592,25 @@ export namespace beyondcorp_v1alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await beyondcorp.projects.locations.connectors.reportStatus({ - * // Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector\}` - * connector: - * 'projects/my-project/locations/my-location/connectors/my-connector', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "requestId": "my_requestId", - * // "resourceInfo": {}, - * // "validateOnly": false - * // } - * }, + * const res = await beyondcorp.projects.locations.connectors.list({ + * // Optional. A filter specifying constraints of a list operation. + * filter: 'placeholder-value', + * // Optional. Specifies the ordering of results. See [Sorting order](https://cloud.google.com/apis/design/design_patterns#sorting_order) for more information. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If not specified, a default value of 50 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's next_page_token to determine if there are more instances left to be queried. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous ListConnectorsRequest, if any. + * pageToken: 'placeholder-value', + * // Required. The resource name of the connector location using the form: `projects/{project_id\}/locations/{location_id\}` + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "connectors": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -12651,57 +10626,54 @@ export namespace beyondcorp_v1alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reportStatus( - params: Params$Resource$Projects$Locations$Connectors$Reportstatus, + list( + params: Params$Resource$Projects$Locations$Connectors$List, options: StreamMethodOptions ): Promise>; - reportStatus( - params?: Params$Resource$Projects$Locations$Connectors$Reportstatus, + list( + params?: Params$Resource$Projects$Locations$Connectors$List, options?: MethodOptions - ): Promise>; - reportStatus( - params: Params$Resource$Projects$Locations$Connectors$Reportstatus, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Connectors$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportStatus( - params: Params$Resource$Projects$Locations$Connectors$Reportstatus, + list( + params: Params$Resource$Projects$Locations$Connectors$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - reportStatus( - params: Params$Resource$Projects$Locations$Connectors$Reportstatus, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - reportStatus( - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Connectors$List, + callback: BodyResponseCallback ): void; - reportStatus( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Connectors$Reportstatus - | BodyResponseCallback + | Params$Resource$Projects$Locations$Connectors$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Connectors$Reportstatus; + {}) as Params$Resource$Projects$Locations$Connectors$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Connectors$Reportstatus; + params = {} as Params$Resource$Projects$Locations$Connectors$List; options = {}; } @@ -12714,27 +10686,27 @@ export namespace beyondcorp_v1alpha { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1alpha/{+connector}:reportStatus').replace( + url: (rootUrl + '/v1alpha/{+parent}/connectors').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['connector'], - pathParams: ['connector'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -13037,29 +11009,6 @@ export namespace beyondcorp_v1alpha { } } - export interface Params$Resource$Projects$Locations$Connectors$Create extends StandardParameters { - /** - * Optional. User-settable connector resource ID. * Must start with a letter. * Must contain between 4-63 characters from `/a-z-/`. * Must end with a number or a letter. - */ - connectorId?: string; - /** - * Required. The resource project name of the connector location using the form: `projects/{project_id\}/locations/{location_id\}` - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$Connector; - } export interface Params$Resource$Projects$Locations$Connectors$Delete extends StandardParameters { /** * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector_id\}` @@ -13112,40 +11061,6 @@ export namespace beyondcorp_v1alpha { */ parent?: string; } - export interface Params$Resource$Projects$Locations$Connectors$Patch extends StandardParameters { - /** - * Required. Unique resource name of the connector. The name is ignored when creating a connector. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Required. Mask of fields to update. At least one path must be supplied in this field. The elements of the repeated paths field may only include these fields from [BeyondCorp.Connector]: * `labels` * `display_name` - */ - updateMask?: string; - /** - * Optional. If set, validates request by executing a dry-run which would not alter the resource in any way. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$Connector; - } - export interface Params$Resource$Projects$Locations$Connectors$Reportstatus extends StandardParameters { - /** - * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector\}` - */ - connector?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ReportStatusRequest; - } export interface Params$Resource$Projects$Locations$Connectors$Resolveinstanceconfig extends StandardParameters { /** * Required. BeyondCorp Connector name using the form: `projects/{project_id\}/locations/{location_id\}/connectors/{connector\}` diff --git a/src/apis/binaryauthorization/v1beta1.ts b/src/apis/binaryauthorization/v1beta1.ts index 29a58d6ed0..6aebf296be 100644 --- a/src/apis/binaryauthorization/v1beta1.ts +++ b/src/apis/binaryauthorization/v1beta1.ts @@ -138,6 +138,9 @@ export namespace binaryauthorization_v1beta1 { * Required. How this admission rule will be evaluated. */ evaluationMode?: string | null; + /** + * Optional. The resource names of the attestors that must attest to a container image, in the format `projects/x/attestors/x`. Each attestor must exist before a policy can reference it. To add an attestor to a policy the principal issuing the policy change request must be able to read the attestor resource. Note: this field must be non-empty when the evaluation_mode field specifies REQUIRE_ATTESTATION, otherwise it must be empty. + */ requireAttestationsBy?: string[] | null; } /** @@ -312,7 +315,7 @@ export namespace binaryauthorization_v1beta1 { */ admissionWhitelistPatterns?: Schema$AdmissionWhitelistPattern[]; /** - * Optional. Per-cluster admission rules. Cluster spec format: `location.clusterId`. There can be at most one admission rule per cluster spec. A `location` is either a compute zone (e.g. us-central1-a) or a region (e.g. us-central1). For `clusterId` syntax restrictions see https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters. + * Optional. A valid Policy has only one of the following rule maps non-empty, i.e. only one of cluster_admission_rules, kubernetes_service_account_admission_rules or istio_service_identity_admission_rules can be non-empty. Per-cluster admission rules. Cluster spec format: `location.clusterId`. There can be at most one admission rule per cluster spec. A `location` is either a compute zone (e.g. us-central1-a) or a region (e.g. us-central1). For `clusterId` syntax restrictions see https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters. */ clusterAdmissionRules?: {[key: string]: Schema$AdmissionRule} | null; /** diff --git a/src/apis/chromemanagement/v1.ts b/src/apis/chromemanagement/v1.ts index 5c5ab16508..54c7b86752 100644 --- a/src/apis/chromemanagement/v1.ts +++ b/src/apis/chromemanagement/v1.ts @@ -6815,7 +6815,7 @@ export namespace chromemanagement_v1 { * const res = await chromemanagement.customers.chromeBrowsers.list({ * // Optional. The filter used to filter browsers. The following fields can be used in the filter: * `browser_permanent_id` * `last_policy_fetch_time` * `os_platform` * `os_architecture` * `os_version` * `machine_name` * `annotated_location` * `annotated_user` * `annotated_asset_id` * `annotated_note` * `org_unit_path` * `org_unit_id` * `last_registration_time` * `os_platform_version` * `browser_version` * `last_status_report_time` * `extension_count` * `policy_count` * `last_device_user` * `last_activity_time` * `device_id_collision` The following functions can be used in the filter: * `in_group(string)`: Filters browsers that belong to the specified Cloud Identity group resource name (e.g. `in_group("groups/{group_id\}")`). Any of the above fields or functions can be used to specify a filter, and filtering by multiple fields or functions is supported with AND operator. String type, Integer type fields and enum type fields support `=` and `:` operators. The timestamp type fields support `=`, `<=` and `\>=` operators. Timestamps expect an RFC-3339 formatted string enclosed in double quotes (e.g., `"2012-04-21T11:30:00-04:00"`). Wildcard `*` is only supported for `machine_name`, `annotated_asset_id`, and `browser_version`. In addition, global string literal filtering without a field name is supported: a single term (e.g., `ABC`) matches if any indexed string field contains `ABC`, and multiple terms joined by `AND` or whitespace (e.g., `machine AND 73` or `machine 73`) match browsers where every term appears in at least one indexed string field (whereas a single quoted phrase like `"machine 73"` matches the contiguous phrase within a single field). * filter: 'placeholder-value', - * // Optional. The fields used to specify the ordering of the results. The supported fields are: * `browser_permanent_id` * `last_sync` * `annotated_user` * `annotated_location` * `annotated_asset_id` * `annotated_notes` * `org_unit_path` * `os_version` * `enrollment_date` * `extension_count` * `policy_count` * `last_signed_in_user` * `machine_name` * `browser_version_channel` * `os_platform_version` * `last_activity_time` * `browser_version` By default, sorting is in ascending order, to specify descending order for a field, a suffix ` desc` should be added to the field name. The default ordering is the descending order of `last_status_report_time`. + * // Optional. The fields used to specify the ordering of the results. The supported fields are: * `browser_permanent_id` * `last_policy_fetch_time` * `annotated_user` * `annotated_location` * `annotated_asset_id` * `annotated_notes` * `org_unit_path` * `os_version` * `last_registration_time` * `extension_count` * `policy_count` * `last_device_user` * `machine_name` * `browser_version_channel` * `os_platform_version` * `last_activity_time` * `browser_version` By default, sorting is in ascending order, to specify descending order for a field, a suffix ` desc` should be added to the field name. The default ordering is the ascending order of `browser_permanent_id`. * orderBy: 'placeholder-value', * // Optional. Maximum number of results to return. Maximum and default are 100. * pageSize: 'placeholder-value', @@ -7324,7 +7324,7 @@ export namespace chromemanagement_v1 { */ filter?: string; /** - * Optional. The fields used to specify the ordering of the results. The supported fields are: * `browser_permanent_id` * `last_sync` * `annotated_user` * `annotated_location` * `annotated_asset_id` * `annotated_notes` * `org_unit_path` * `os_version` * `enrollment_date` * `extension_count` * `policy_count` * `last_signed_in_user` * `machine_name` * `browser_version_channel` * `os_platform_version` * `last_activity_time` * `browser_version` By default, sorting is in ascending order, to specify descending order for a field, a suffix ` desc` should be added to the field name. The default ordering is the descending order of `last_status_report_time`. + * Optional. The fields used to specify the ordering of the results. The supported fields are: * `browser_permanent_id` * `last_policy_fetch_time` * `annotated_user` * `annotated_location` * `annotated_asset_id` * `annotated_notes` * `org_unit_path` * `os_version` * `last_registration_time` * `extension_count` * `policy_count` * `last_device_user` * `machine_name` * `browser_version_channel` * `os_platform_version` * `last_activity_time` * `browser_version` By default, sorting is in ascending order, to specify descending order for a field, a suffix ` desc` should be added to the field name. The default ordering is the ascending order of `browser_permanent_id`. */ orderBy?: string; /** diff --git a/src/apis/cloudasset/v1p7beta1.ts b/src/apis/cloudasset/v1p7beta1.ts index 3b81b8e23f..18eee641c7 100644 --- a/src/apis/cloudasset/v1p7beta1.ts +++ b/src/apis/cloudasset/v1p7beta1.ts @@ -513,7 +513,7 @@ export namespace cloudasset_v1p7beta1 { */ name?: string | null; /** - * Human readable title. Must be unique within the Policy. + * Human-readable title. Must be unique within the policy. */ title?: string | null; } @@ -522,7 +522,7 @@ export namespace cloudasset_v1p7beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1AccessPolicy { /** - * Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two Access Policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format. + * Output only. An opaque identifier for the current version of the `AccessPolicy`. This will always be a strongly validated etag, meaning that two access policies will be identical if and only if their etags are identical. Clients should not expect this to be in any specific format. */ etag?: string | null; /** @@ -534,11 +534,11 @@ export namespace cloudasset_v1p7beta1 { */ parent?: string | null; /** - * The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy which includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number\}` or `projects/{project_number\}` + * The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=["folders/123"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy that includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number\}` or `projects/{project_number\}` */ scopes?: string[] | null; /** - * Required. Human readable title. Does not affect behavior. + * Required. Human-readable title. Does not affect behavior. */ title?: string | null; } @@ -573,7 +573,7 @@ export namespace cloudasset_v1p7beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1BasicLevel { /** - * How the `conditions` list should be combined to determine if a request is granted this `AccessLevel`. If AND is used, each `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. If OR is used, at least one `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. Default behavior is AND. + * How the `conditions` list should be combined to determine if a request is granted this `AccessLevel`. If `AND` is used, each `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. If `OR` is used, at least one `Condition` in `conditions` must be satisfied for the `AccessLevel` to be applied. Default behavior is `AND`. */ combiningFunction?: string | null; /** @@ -582,15 +582,15 @@ export namespace cloudasset_v1p7beta1 { conditions?: Schema$GoogleIdentityAccesscontextmanagerV1Condition[]; } /** - * A condition necessary for an `AccessLevel` to be granted. The Condition is an AND over its fields. So a Condition is true if: 1) the request IP is from one of the listed subnetworks AND 2) the originating device complies with the listed device policy AND 3) all listed access levels are granted AND 4) the request was sent at a time allowed by the DateTimeRestriction. + * A condition necessary for an `AccessLevel` to be granted. The `Condition` is an AND over its fields. A `Condition` is true if: 1) the request IP is from one of the listed subnetworks, AND 2) the originating device complies with the listed device policy, AND 3) all listed access levels are granted, AND 4) the request was sent at a time allowed by the `DateTimeRestriction`. */ export interface Schema$GoogleIdentityAccesscontextmanagerV1Condition { /** - * Device specific restrictions, all restrictions must hold for the Condition to be true. If not specified, all devices are allowed. + * Device-specific restrictions. All restrictions must hold for the `Condition` to be true. If not specified, all devices are allowed. */ devicePolicy?: Schema$GoogleIdentityAccesscontextmanagerV1DevicePolicy; /** - * CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas "2001:db8::1/32" is not. The originating IP of a request must be in one of the listed subnets in order for this Condition to be true. If empty, all IP addresses are allowed. + * CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (that is, all the host bits must be zero) or the input is considered malformed. For example, `"192.0.2.0/24"` is accepted, but `"192.0.2.1/24"` is not. Similarly, for IPv6, `"2001:db8::/32"` is accepted, whereas `"2001:db8::1/32"` is not. The originating IP of a request must be in one of the listed subnets in order for this `Condition` to be true. If empty, all IP addresses are allowed. */ ipSubnetworks?: string[] | null; /** @@ -598,7 +598,7 @@ export namespace cloudasset_v1p7beta1 { */ members?: string[] | null; /** - * Whether to negate the Condition. If true, the Condition becomes a NAND over its non-empty fields. Any non-empty field criteria evaluating to false will result in the Condition to be satisfied. Defaults to false. + * Whether to negate the `Condition`. If `true`, the `Condition` becomes a NAND over its non-empty fields. Any non-empty field criteria evaluating to `false` will result in the `Condition` being satisfied. Defaults to `false`. */ negate?: boolean | null; /** @@ -606,7 +606,7 @@ export namespace cloudasset_v1p7beta1 { */ regions?: string[] | null; /** - * A list of other access levels defined in the same `Policy`, referenced by resource name. Referencing an `AccessLevel` which does not exist is an error. All access levels listed must be granted for the Condition to be true. Example: "`accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"` + * A list of other access levels defined in the same `Policy`, referenced by resource name. Referencing an `AccessLevel` that does not exist is an error. All access levels listed must be granted for the `Condition` to be true. Example: `"accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"` */ requiredAccessLevels?: string[] | null; /** @@ -624,19 +624,19 @@ export namespace cloudasset_v1p7beta1 { expr?: Schema$Expr; } /** - * `DevicePolicy` specifies device specific restrictions necessary to acquire a given access level. A `DevicePolicy` specifies requirements for requests from devices to be granted access levels, it does not do any enforcement on the device. `DevicePolicy` acts as an AND over all specified fields, and each repeated field is an OR over its elements. Any unset fields are ignored. For example, if the proto is { os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX, encryption_status: ENCRYPTED\}, then the DevicePolicy will be true for requests originating from encrypted Linux desktops and encrypted Windows desktops. + * `DevicePolicy` specifies device-specific restrictions necessary to acquire a given access level. A `DevicePolicy` specifies requirements for requests from devices to be granted access levels; it does not do any enforcement on the device. `DevicePolicy` acts as an AND over all specified fields, and each repeated field is an OR over its elements. Any unset fields are ignored. For example, if the proto is `{ os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX, encryption_status: ENCRYPTED\}`, then the `DevicePolicy` will be true for requests originating from encrypted Linux desktops and encrypted Windows desktops. */ export interface Schema$GoogleIdentityAccesscontextmanagerV1DevicePolicy { /** - * Allowed device management levels, an empty list allows all management levels. + * Allowed device management levels. An empty list allows all management levels. */ allowedDeviceManagementLevels?: string[] | null; /** - * Allowed encryptions statuses, an empty list allows all statuses. + * Allowed encryption statuses. An empty list allows all statuses. */ allowedEncryptionStatuses?: string[] | null; /** - * Allowed OS versions, an empty list allows all types and all versions. + * Allowed OS versions. An empty list allows all types and all versions. */ osConstraints?: Schema$GoogleIdentityAccesscontextmanagerV1OsConstraint[]; /** @@ -644,16 +644,16 @@ export namespace cloudasset_v1p7beta1 { */ requireAdminApproval?: boolean | null; /** - * Whether the device needs to be corp owned. + * Whether the device needs to be corp-owned. */ requireCorpOwned?: boolean | null; /** - * Whether or not screenlock is required for the DevicePolicy to be true. Defaults to `false`. + * Whether or not screenlock is required for the `DevicePolicy` to be true. Defaults to `false`. */ requireScreenlock?: boolean | null; } /** - * Defines the conditions under which an EgressPolicy matches a request. Conditions based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. + * Defines the conditions under which an EgressPolicy matches a request. Conditions are based on information about the source of the request. Note that if the destination of the request is also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. */ export interface Schema$GoogleIdentityAccesscontextmanagerV1EgressFrom { /** @@ -665,7 +665,7 @@ export namespace cloudasset_v1p7beta1 { */ identityType?: string | null; /** - * Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`. + * Whether to enforce traffic restrictions based on `sources` field. If the `sources` field is not empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`. */ sourceRestriction?: string | null; /** @@ -674,7 +674,7 @@ export namespace cloudasset_v1p7beta1 { sources?: Schema$GoogleIdentityAccesscontextmanagerV1EgressSource[]; } /** - * Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates as well as the API services and API actions being used. They do not related to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo. + * Policy for egress from perimeter. EgressPolicies match requests based on `egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both `egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset). EgressPolicies are concerned with the *resources* that a request relates to, as well as the API services and API actions being used. They do not relate to the direction of data movement. More detailed documentation for this concept can be found in the descriptions of EgressFrom and EgressTo. */ export interface Schema$GoogleIdentityAccesscontextmanagerV1EgressPolicy { /** @@ -686,7 +686,7 @@ export namespace cloudasset_v1p7beta1 { */ egressTo?: Schema$GoogleIdentityAccesscontextmanagerV1EgressTo; /** - * Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters. + * Optional. Human-readable title for the egress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters. */ title?: string | null; } @@ -703,7 +703,7 @@ export namespace cloudasset_v1p7beta1 { */ pscEndpoint?: Schema$GoogleIdentityAccesscontextmanagerV1PrivateServiceConnectEndpoint; /** - * A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`. You can't use `*` in this field to allow all Google Cloud resources. + * A Google Cloud resource from the service perimeter that you want to allow to access data outside the perimeter. This field supports projects, folders, and organizations in the form `projects/{project_number\}`, `folders/{folder_id\}`, and `organizations/{organization_id\}`. You can't use `*` in this field to allow all Google Cloud resources. */ resource?: string | null; } @@ -712,7 +712,7 @@ export namespace cloudasset_v1p7beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1EgressTo { /** - * A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are s3://BUCKET_NAME, s3a://BUCKET_NAME, and s3n://BUCKET_NAME. For Azure Storage, the supported format is azure://myaccount.blob.core.windows.net/CONTAINER_NAME. A request matches if it contains an external resource in this list (Example: s3://bucket/path). Currently '*' is not allowed. + * A list of external resources that are allowed to be accessed. Only AWS and Azure resources are supported. For Amazon S3, the supported formats are `s3://BUCKET_NAME`, `s3a://BUCKET_NAME`, and `s3n://BUCKET_NAME`. For Azure Storage, the supported format is `azure://myaccount.blob.core.windows.net/CONTAINER_NAME`. A request matches if it contains an external resource in this list (Example: `s3://bucket/path`). Currently `'*'` is not allowed. */ externalResources?: string[] | null; /** @@ -720,11 +720,11 @@ export namespace cloudasset_v1p7beta1 { */ operations?: Schema$GoogleIdentityAccesscontextmanagerV1ApiOperation[]; /** - * A list of resources, currently projects, folders, and organizations in the form `projects/`, `folders/`, and `organizations/`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter. + * A list of resources, currently projects, folders, and organizations in the form `projects/{project_number\}`, `folders/{folder_id\}`, and `organizations/{organization_id\}`, that are allowed to be accessed by sources defined in the corresponding EgressFrom. A request matches if it contains a resource in this list. If `*` is specified for `resources`, then this EgressTo rule will authorize access to all resources outside the perimeter. */ resources?: string[] | null; /** - * IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom. are allowed to perform in this ServicePerimeter. + * IAM roles that represent the set of operations that the sources specified in the corresponding EgressFrom are allowed to perform in this ServicePerimeter. */ roles?: string[] | null; } @@ -758,7 +758,7 @@ export namespace cloudasset_v1p7beta1 { */ ingressTo?: Schema$GoogleIdentityAccesscontextmanagerV1IngressTo; /** - * Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and can not exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters. + * Optional. Human-readable title for the ingress rule. The title must be unique within the perimeter and cannot exceed 100 characters. Within the access policy, the combined length of all rule titles must not exceed 240,000 characters. */ title?: string | null; } @@ -767,7 +767,7 @@ export namespace cloudasset_v1p7beta1 { */ export interface Schema$GoogleIdentityAccesscontextmanagerV1IngressSource { /** - * An AccessLevel resource name that allow resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed. + * An AccessLevel resource name that allows resources within the ServicePerimeters to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all IngressSources will be allowed. */ accessLevel?: string | null; /** @@ -788,7 +788,7 @@ export namespace cloudasset_v1p7beta1 { */ operations?: Schema$GoogleIdentityAccesscontextmanagerV1ApiOperation[]; /** - * A list of resources, currently projects, folders, and organizations in the form `projects/{project_number\}`, `folders/{folder_id\}`, and `organizations/{organization_id\}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter are allowed. + * A list of resources, currently projects, folders, and organizations in the form `projects/{project_number\}`, `folders/{folder_id\}`, and `organizations/{organization_id\}`, protected by this ServicePerimeter that are allowed to be accessed by sources defined in the corresponding IngressFrom. If a single `*` is specified, then access to all resources inside the perimeter is allowed. */ resources?: string[] | null; /** @@ -831,7 +831,7 @@ export namespace cloudasset_v1p7beta1 { */ osType?: string | null; /** - * Only allows requests from devices with a verified Chrome OS. Verifications includes requirements that the device is enterprise-managed, conformant to domain policies, and the caller has permission to call the API targeted by the request. + * Only allows requests from devices with a verified Chrome OS. Verification includes requirements that the device is enterprise-managed, conforms to domain policies, and the caller has permission to call the API targeted by the request. */ requireVerifiedChromeOs?: boolean | null; } @@ -853,7 +853,7 @@ export namespace cloudasset_v1p7beta1 { */ modifiers?: Schema$GoogleIdentityAccesscontextmanagerV1Modifier[]; /** - * URL pattern to allow. Only patterns of ".googleapis.com/x", "www.googleapis.com//x" and "*.appspot.com/x forms are supported, where should be an alphanumeric name. + * URL pattern to allow. Only patterns of `".googleapis.com/x"`, `"www.googleapis.com//x"`, and `"*.appspot.com/x"` forms are supported, where `` should be an alphanumeric name. */ pattern?: string | null; /** @@ -878,15 +878,15 @@ export namespace cloudasset_v1p7beta1 { */ name?: string | null; /** - * Perimeter type indicator. A single project or VPC network is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty. + * Perimeter type indicator. A single project or VPC network is allowed to be a member of a single regular perimeter, but multiple service perimeter bridges. A project cannot be included in a perimeter bridge without being included in a regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty. */ perimeterType?: string | null; /** - * Proposed (or dry run) ServicePerimeter configuration. This configuration allows to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the "use_explicit_dry_run_spec" flag is set. + * Proposed (or dry run) ServicePerimeter configuration. This configuration allows you to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the `use_explicit_dry_run_spec` flag is set. */ spec?: Schema$GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig; /** - * Current ServicePerimeter configuration. Specifies sets of resources, restricted services and access levels that determine perimeter content and boundaries. + * Current ServicePerimeter configuration. Specifies sets of resources, restricted services, and access levels that determine perimeter content and boundaries. */ status?: Schema$GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig; /** @@ -894,7 +894,7 @@ export namespace cloudasset_v1p7beta1 { */ title?: string | null; /** - * Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values. + * Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. `use_explicit_dry_run_spec` must be set to `true` if any of the fields in the spec are set to non-default values. */ useExplicitDryRunSpec?: boolean | null; } @@ -936,11 +936,11 @@ export namespace cloudasset_v1p7beta1 { */ allowedServicePatterns?: Schema$GoogleIdentityAccesscontextmanagerV1ServicePattern[]; /** - * The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter. + * The list of APIs usable within the Service Perimeter. Must be empty unless `enable_restriction` is `true`. You can specify a list of individual services, as well as include the `'RESTRICTED-SERVICES'` value, which automatically includes all of the services protected by the perimeter. */ allowedServices?: string[] | null; /** - * Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'. + * Whether to restrict API calls within the Service Perimeter to the list of APIs specified in `allowed_services`. */ enableRestriction?: boolean | null; /** @@ -958,7 +958,7 @@ export namespace cloudasset_v1p7beta1 { vpcSubnetwork?: Schema$GoogleIdentityAccesscontextmanagerV1VpcSubNetwork; } /** - * Sub-segment ranges inside of a VPC Network. + * Sub-segment ranges inside of a VPC network. */ export interface Schema$GoogleIdentityAccesscontextmanagerV1VpcSubNetwork { /** @@ -966,7 +966,7 @@ export namespace cloudasset_v1p7beta1 { */ network?: string | null; /** - * CIDR block IP subnetwork specification. The IP address must be an IPv4 address and can be a public or private IP address. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. If empty, all IP addresses are allowed. + * CIDR block IP subnetwork specification. The IP address must be an IPv4 address and can be a public or private IP address. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (that is, all the host bits must be zero) or the input is considered malformed. For example, `"192.0.2.0/24"` is accepted, but `"192.0.2.1/24"` is not. If empty, all IP addresses are allowed. */ vpcIpSubnetworks?: string[] | null; } diff --git a/src/apis/cloudresourcemanager/v3.ts b/src/apis/cloudresourcemanager/v3.ts index c746772ff5..21408efded 100644 --- a/src/apis/cloudresourcemanager/v3.ts +++ b/src/apis/cloudresourcemanager/v3.ts @@ -187,6 +187,64 @@ export namespace cloudresourcemanager_v3 { */ role?: string | null; } + /** + * A Boundary is a collection of projects defined by a filtering criteria on an organization or a folder. + */ + export interface Schema$Boundary { + /** + * Output only. The creation time of the Boundary. + */ + createTime?: string | null; + /** + * Optional. Human-readable display name of the Boundary. When present it must be between 4 to 30 characters. Allowed characters are: lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote, space, and exclamation point. Example: `My Production Boundary` + */ + displayName?: string | null; + /** + * This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. + */ + etag?: string | null; + /** + * Output only. The Management Project of the CapabilityConfig this Boundary is associated with. Will be empty if the Boundary is not associated with any CapabilityConfig. Format: `projects/{project_number\}` Example: `projects/123456789012` + */ + managementProject?: string | null; + /** + * Identifier. The unique resource name of the Boundary. Format: - `organizations/{organization_id\}/boundaries/{boundary_id\}` - `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` + */ + name?: string | null; + /** + * Optional. The filter defining the criteria for descendant projects to be included in the Boundary. Descendant projects are dynamically included in the Boundary based on this filter. + */ + resourceFilter?: Schema$ResourceFilter; + /** + * Output only. The lifecycle state of the Boundary. + */ + state?: string | null; + /** + * Output only. The most recent time this Boundary was modified. + */ + updateTime?: string | null; + } + /** + * A BoundaryConfig defines the common configurations regarding Boundaries defined under a parent CRM node (Folder or Organization), such as the partitioning tag key. + */ + export interface Schema$BoundaryConfig { + /** + * This checksum is computed by the server based on the value of other fields, and may be sent on update requests to ensure the client has an up-to-date value before proceeding. + */ + etag?: string | null; + /** + * Identifier. The unique resource name of the BoundaryConfig. Format: - `organizations/{organization\}/boundaryConfig` - `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` + */ + name?: string | null; + /** + * Optional. The namespaced name of the tag key. Format: `{parent_id\}/{tag_key_short_name\}` Example: `123456789012/env` (where 123456789012 is the organization ID). + */ + tagKey?: string | null; + /** + * Output only. The most recent time this BoundaryConfig was modified. + */ + updateTime?: string | null; + } /** * Representation of a Capability. */ @@ -591,6 +649,19 @@ export namespace cloudresourcemanager_v3 { */ restrictions?: string[] | null; } + /** + * A page of the response received from the ListBoundaries method. A paginated response where more pages are available has `next_page_token` set. This token can be used in a subsequent request to retrieve the next page. NOTE: A response may contain fewer elements than the request `page_size` and still have a `next_page_token`. + */ + export interface Schema$ListBoundariesResponse { + /** + * The list of Boundaries under the parent. This list can be paginated. + */ + boundaries?: Schema$Boundary[]; + /** + * Pagination token. If the result set is too large to fit in a single response, this token is returned. It encodes the position of the current result cursor. Feeding this value into a new list request with the `page_token` parameter gives the next page of the results. When `next_page_token` is not filled in, there is no next page and the list returned is the last page in the result set. + */ + nextPageToken?: string | null; + } /** * A page of the response received from the ListCapabilityConfigs method. A paginated response where more pages are available has `next_page_token` set. This token can be used in a subsequent request to retrieve the next page. NOTE: A response may contain fewer elements than the request `page_size` and still have a `next_page_token`. */ @@ -904,6 +975,15 @@ export namespace cloudresourcemanager_v3 { */ ready?: boolean | null; } + /** + * Filter to define the criteria for including projects in the Boundary. + */ + export interface Schema$ResourceFilter { + /** + * A tag based filter. A project must match it to be included. + */ + tagFilter?: Schema$TagFilter; + } /** * The response message for searching folders. */ @@ -1015,6 +1095,19 @@ export namespace cloudresourcemanager_v3 { */ tags?: {[key: string]: string} | null; } + /** + * Matches projects based on a specific tag key and a specific tag value. + */ + export interface Schema$TagFilter { + /** + * Required. Immutable. The namespaced name of the tag key. Format: `{parent_id\}/{tag_key_short_name\}` Example: `123456789012/env` (where 123456789012 is the organization ID). + */ + tagKey?: string | null; + /** + * Required. The allowed value for the tag key. A project matches this tag filter if its effective tag value for the given `tag_key` matches this value. Format: short name of the tag value. Example: `production` or `staging`. + */ + tagValue?: string | null; + } /** * A TagHold represents the use of a TagValue that is not captured by TagBindings. If a TagValue has any TagHolds, deletion will be blocked. This resource is intended to be created in the same cloud location as the `holder`. */ @@ -1363,10 +1456,12 @@ export namespace cloudresourcemanager_v3 { export class Resource$Folders { context: APIRequestContext; + boundaries: Resource$Folders$Boundaries; capabilities: Resource$Folders$Capabilities; capabilityConfigs: Resource$Folders$Capabilityconfigs; constructor(context: APIRequestContext) { this.context = context; + this.boundaries = new Resource$Folders$Boundaries(this.context); this.capabilities = new Resource$Folders$Capabilities(this.context); this.capabilityConfigs = new Resource$Folders$Capabilityconfigs( this.context @@ -1808,6 +1903,149 @@ export namespace cloudresourcemanager_v3 { } } + /** + * Retrieves the BoundaryConfig identified by the specified `name` (for example, `folders/123456789/boundaryConfig`). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.folders.getBoundaryConfig({ + * // Required. The name of the BoundaryConfig to retrieve. Format: `organizations/{organization\}/boundaryConfig` or `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` + * name: 'folders/my-folder/boundaryConfig', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "name": "my_name", + * // "tagKey": "my_tagKey", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getBoundaryConfig( + params: Params$Resource$Folders$Getboundaryconfig, + options: StreamMethodOptions + ): Promise>; + getBoundaryConfig( + params?: Params$Resource$Folders$Getboundaryconfig, + options?: MethodOptions + ): Promise>; + getBoundaryConfig( + params: Params$Resource$Folders$Getboundaryconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getBoundaryConfig( + params: Params$Resource$Folders$Getboundaryconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getBoundaryConfig( + params: Params$Resource$Folders$Getboundaryconfig, + callback: BodyResponseCallback + ): void; + getBoundaryConfig( + callback: BodyResponseCallback + ): void; + getBoundaryConfig( + paramsOrCallback?: + | Params$Resource$Folders$Getboundaryconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Folders$Getboundaryconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Folders$Getboundaryconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Gets the access control policy for a folder. The returned policy may be empty if no such policy or resource exists. The `resource` field should be the folder's resource name, for example: "folders/1234". The caller must have `resourcemanager.folders.getIamPolicy` permission on the identified folder. * @example @@ -2991,23 +3229,182 @@ export namespace cloudresourcemanager_v3 { return createAPIRequest(parameters); } } - } - export interface Params$Resource$Folders$Create extends StandardParameters { - /** - * Request body metadata - */ - requestBody?: Schema$Folder; - } - export interface Params$Resource$Folders$Delete extends StandardParameters { - /** - * Required. The resource name of the folder to be deleted. Must be of the form `folders/{folder_id\}`. - */ - name?: string; - } - export interface Params$Resource$Folders$Get extends StandardParameters { /** - * Required. The resource name of the folder to retrieve. Must be of the form `folders/{folder_id\}`. + * Updates the BoundaryConfig identified by the specified `name` (for example, `folders/123456789/boundaryConfig`). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.folders.updateBoundaryConfig({ + * // Identifier. The unique resource name of the BoundaryConfig. Format: - `organizations/{organization\}/boundaryConfig` - `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` + * name: 'folders/my-folder/boundaryConfig', + * // Optional. The list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "name": "my_name", + * // "tagKey": "my_tagKey", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + updateBoundaryConfig( + params: Params$Resource$Folders$Updateboundaryconfig, + options: StreamMethodOptions + ): Promise>; + updateBoundaryConfig( + params?: Params$Resource$Folders$Updateboundaryconfig, + options?: MethodOptions + ): Promise>; + updateBoundaryConfig( + params: Params$Resource$Folders$Updateboundaryconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateBoundaryConfig( + params: Params$Resource$Folders$Updateboundaryconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateBoundaryConfig( + params: Params$Resource$Folders$Updateboundaryconfig, + callback: BodyResponseCallback + ): void; + updateBoundaryConfig( + callback: BodyResponseCallback + ): void; + updateBoundaryConfig( + paramsOrCallback?: + | Params$Resource$Folders$Updateboundaryconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Folders$Updateboundaryconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Folders$Updateboundaryconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Folders$Create extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$Folder; + } + export interface Params$Resource$Folders$Delete extends StandardParameters { + /** + * Required. The resource name of the folder to be deleted. Must be of the form `folders/{folder_id\}`. + */ + name?: string; + } + export interface Params$Resource$Folders$Get extends StandardParameters { + /** + * Required. The resource name of the folder to retrieve. Must be of the form `folders/{folder_id\}`. + */ + name?: string; + } + export interface Params$Resource$Folders$Getboundaryconfig extends StandardParameters { + /** + * Required. The name of the BoundaryConfig to retrieve. Format: `organizations/{organization\}/boundaryConfig` or `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` */ name?: string; } @@ -3113,15 +3510,30 @@ export namespace cloudresourcemanager_v3 { */ requestBody?: Schema$UndeleteFolderRequest; } + export interface Params$Resource$Folders$Updateboundaryconfig extends StandardParameters { + /** + * Identifier. The unique resource name of the BoundaryConfig. Format: - `organizations/{organization\}/boundaryConfig` - `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` + */ + name?: string; + /** + * Optional. The list of fields to update. + */ + updateMask?: string; - export class Resource$Folders$Capabilities { + /** + * Request body metadata + */ + requestBody?: Schema$BoundaryConfig; + } + + export class Resource$Folders$Boundaries { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the Capability identified by the supplied resource name. + * Creates a Boundary under a parent Folder or Organization. Creating a Boundary triggers the creation of a Management Project if one is not supplied. * @example * ```js * // Before running the sample: @@ -3150,16 +3562,36 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.folders.capabilities.get({ - * // Required. The name of the capability to get. For example, `folders/123/capabilities/app-management` - * name: 'folders/my-folder/capabilities/my-capabilitie', + * const res = await cloudresourcemanager.folders.boundaries.create({ + * // Required. The user-assigned ID for the Boundary, which will become the final component of the Boundary's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-boundary-123` + * boundaryId: 'placeholder-value', + * // Required. The parent resource under which the Boundary will be created. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` + * parent: 'folders/my-folder', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", + * // "name": "my_name", + * // "resourceFilter": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "value": false + * // "response": {} * // } * } * @@ -3175,52 +3607,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Folders$Capabilities$Get, + create( + params: Params$Resource$Folders$Boundaries$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Folders$Capabilities$Get, + create( + params?: Params$Resource$Folders$Boundaries$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Folders$Capabilities$Get, + ): Promise>; + create( + params: Params$Resource$Folders$Boundaries$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Folders$Capabilities$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Folders$Boundaries$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Folders$Capabilities$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Folders$Boundaries$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Folders$Capabilities$Get - | BodyResponseCallback + | Params$Resource$Folders$Boundaries$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Folders$Capabilities$Get; + {}) as Params$Resource$Folders$Boundaries$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Folders$Capabilities$Get; + params = {} as Params$Resource$Folders$Boundaries$Create; options = {}; } @@ -3234,29 +3666,32 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v3/{+parent}/boundaries').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the Capability. + * Deletes the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`). * @example * ```js * // Before running the sample: @@ -3285,20 +3720,9 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.folders.capabilities.patch({ - * // Immutable. Identifier. The resource name of the capability. Must be in the following form: * `folders/{folder_id\}/capabilities/{capability_name\}` For example, `folders/123/capabilities/app-management` Following are the allowed {capability_name\} values: * `app-management` - * name: 'folders/my-folder/capabilities/my-capabilitie', - * // Optional. The list of fields to update. Only [Capability.value] can be updated. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "name": "my_name", - * // "value": false - * // } - * }, + * const res = await cloudresourcemanager.folders.boundaries.delete({ + * // Required. The name of the Boundary to delete. Format: `organizations/{organization_id\}/boundaries/{boundary_id\}` or `folders/{folder_id\}/boundaries/{boundary_id\}` + * name: 'folders/my-folder/boundaries/my-boundarie', * }); * console.log(res.data); * @@ -3324,32 +3748,32 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Folders$Capabilities$Patch, + delete( + params: Params$Resource$Folders$Boundaries$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Folders$Capabilities$Patch, + delete( + params?: Params$Resource$Folders$Boundaries$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Folders$Capabilities$Patch, + delete( + params: Params$Resource$Folders$Boundaries$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Folders$Capabilities$Patch, + delete( + params: Params$Resource$Folders$Boundaries$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Folders$Capabilities$Patch, + delete( + params: Params$Resource$Folders$Boundaries$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Folders$Capabilities$Patch + | Params$Resource$Folders$Boundaries$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -3364,12 +3788,12 @@ export namespace cloudresourcemanager_v3 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Folders$Capabilities$Patch; + {}) as Params$Resource$Folders$Boundaries$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Folders$Capabilities$Patch; + params = {} as Params$Resource$Folders$Boundaries$Delete; options = {}; } @@ -3384,7 +3808,7 @@ export namespace cloudresourcemanager_v3 { options: Object.assign( { url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -3403,38 +3827,9 @@ export namespace cloudresourcemanager_v3 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Folders$Capabilities$Get extends StandardParameters { - /** - * Required. The name of the capability to get. For example, `folders/123/capabilities/app-management` - */ - name?: string; - } - export interface Params$Resource$Folders$Capabilities$Patch extends StandardParameters { - /** - * Immutable. Identifier. The resource name of the capability. Must be in the following form: * `folders/{folder_id\}/capabilities/{capability_name\}` For example, `folders/123/capabilities/app-management` Following are the allowed {capability_name\} values: * `app-management` - */ - name?: string; - /** - * Optional. The list of fields to update. Only [Capability.value] can be updated. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Capability; - } - - export class Resource$Folders$Capabilityconfigs { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a CapabilityConfig under a parent Organization, Folder or Project. Creating a CapabilityConfig triggers the creation of a Management Project if one is not supplied. + * Retrieves the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`). * @example * ```js * // Before running the sample: @@ -3455,7 +3850,10 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3463,37 +3861,22 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.folders.capabilityConfigs.create({ - * // Required. The user-assigned ID for the CapabilityConfig, which will become the final component of the CapabilityConfig's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-capability-config-123` - * capabilityConfigId: 'placeholder-value', - * // Required. The parent resource under which the CapabilityConfig will be created. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` or `projects/{project_number\}` - * parent: 'folders/my-folder', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "boundaries": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "managementProject": "my_managementProject", - * // "name": "my_name", - * // "state": "my_state", - * // "types": [], - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await cloudresourcemanager.folders.boundaries.get({ + * // Required. The name of the Boundary to retrieve. Format: `organizations/{organization_id\}/boundaries/{boundary_id\}` or `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` + * name: 'folders/my-folder/boundaries/my-boundarie', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", * // "name": "my_name", - * // "response": {} + * // "resourceFilter": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * } * @@ -3509,52 +3892,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Folders$Capabilityconfigs$Create, + get( + params: Params$Resource$Folders$Boundaries$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Folders$Capabilityconfigs$Create, + get( + params?: Params$Resource$Folders$Boundaries$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Folders$Capabilityconfigs$Create, + ): Promise>; + get( + params: Params$Resource$Folders$Boundaries$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Folders$Capabilityconfigs$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Folders$Boundaries$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Folders$Capabilityconfigs$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Folders$Boundaries$Get, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Folders$Capabilityconfigs$Create - | BodyResponseCallback + | Params$Resource$Folders$Boundaries$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Folders$Capabilityconfigs$Create; + {}) as Params$Resource$Folders$Boundaries$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Folders$Capabilityconfigs$Create; + params = {} as Params$Resource$Folders$Boundaries$Get; options = {}; } @@ -3568,32 +3951,29 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+parent}/capabilityConfigs').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the CapabilityConfig identified by the specified `name` (for example, `folders/123456789/capabilityConfigs/my-capability-config`). + * Lists Boundaries that are direct children of the specified organization or folder resource. * @example * ```js * // Before running the sample: @@ -3614,7 +3994,10 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3622,19 +4005,20 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.folders.capabilityConfigs.delete({ - * // Required. The name of the CapabilityConfig to delete. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` - * name: 'folders/my-folder/capabilityConfigs/my-capabilityConfig', + * const res = await cloudresourcemanager.folders.boundaries.list({ + * // Optional. The maximum number of Boundaries to return in the response. The service may return fewer Boundaries than requested. If unspecified, at most 100 Boundaries will be returned. The maximum value is 100; values above 100 will be coerced to 100. + * pageSize: 'placeholder-value', + * // Optional. A pagination token received from a previous call to `ListBoundaries` that indicates from where listing should continue. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The name of the parent resource whose Boundaries are being listed. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` + * parent: 'folders/my-folder', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "boundaries": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -3650,52 +4034,54 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Folders$Capabilityconfigs$Delete, + list( + params: Params$Resource$Folders$Boundaries$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Folders$Capabilityconfigs$Delete, + list( + params?: Params$Resource$Folders$Boundaries$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Folders$Capabilityconfigs$Delete, + ): Promise>; + list( + params: Params$Resource$Folders$Boundaries$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Folders$Capabilityconfigs$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Folders$Boundaries$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Folders$Capabilityconfigs$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Folders$Boundaries$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Folders$Capabilityconfigs$Delete - | BodyResponseCallback + | Params$Resource$Folders$Boundaries$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Folders$Capabilityconfigs$Delete; + {}) as Params$Resource$Folders$Boundaries$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Folders$Capabilityconfigs$Delete; + params = {} as Params$Resource$Folders$Boundaries$List; options = {}; } @@ -3709,29 +4095,32 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v3/{+parent}/boundaries').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the CapabilityConfig identified by the specified `name` (for example, `folders/123456789/capabilityConfigs/my-capability-config`). + * Updates the `display_name` and `resource_filter.tag_filter.tag_value` of the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`). * @example * ```js * // Before running the sample: @@ -3752,10 +4141,7 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -3763,23 +4149,36 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.folders.capabilityConfigs.get({ - * // Required. The name of the CapabilityConfig to retrieve. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` Example: `folders/123456789/capabilityConfigs/my-capability-config` - * name: 'folders/my-folder/capabilityConfigs/my-capabilityConfig', + * const res = await cloudresourcemanager.folders.boundaries.patch({ + * // Identifier. The unique resource name of the Boundary. Format: - `organizations/{organization_id\}/boundaries/{boundary_id\}` - `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` + * name: 'folders/my-folder/boundaries/my-boundarie', + * // Optional. The list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", + * // "name": "my_name", + * // "resourceFilter": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "boundaries": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "managementProject": "my_managementProject", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "state": "my_state", - * // "types": [], - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -3795,53 +4194,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Folders$Capabilityconfigs$Get, + patch( + params: Params$Resource$Folders$Boundaries$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Folders$Capabilityconfigs$Get, + patch( + params?: Params$Resource$Folders$Boundaries$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Folders$Capabilityconfigs$Get, + ): Promise>; + patch( + params: Params$Resource$Folders$Boundaries$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Folders$Capabilityconfigs$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Folders$Boundaries$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Folders$Capabilityconfigs$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Folders$Boundaries$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Folders$Capabilityconfigs$Get - | BodyResponseCallback + | Params$Resource$Folders$Boundaries$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Folders$Capabilityconfigs$Get; + {}) as Params$Resource$Folders$Boundaries$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Folders$Capabilityconfigs$Get; + params = {} as Params$Resource$Folders$Boundaries$Patch; options = {}; } @@ -3856,7 +4254,7 @@ export namespace cloudresourcemanager_v3 { options: Object.assign( { url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -3867,62 +4265,119 @@ export namespace cloudresourcemanager_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Folders$Boundaries$Create extends StandardParameters { /** - * Lists CapabilityConfigs that are direct children of the specified organization, folder or project resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const cloudresourcemanager = google.cloudresourcemanager('v3'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await cloudresourcemanager.folders.capabilityConfigs.list({ - * // Optional. The maximum number of CapabilityConfigs to return in the response. The service may return fewer CapabilityConfigs than requested. If unspecified, at most 100 CapabilityConfigs will be returned. The maximum value is 100; values above 100 will be coerced to 100. - * pageSize: 'placeholder-value', - * // Optional. A pagination token received from a previous call to `ListCapabilityConfigs` that indicates from where listing should continue. Provide this to retrieve the subsequent page. - * pageToken: 'placeholder-value', - * // Required. The name of the parent resource whose CapabilityConfigs are being listed. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` - * parent: 'folders/my-folder', - * }); - * console.log(res.data); - * - * // Example response + * Required. The user-assigned ID for the Boundary, which will become the final component of the Boundary's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-boundary-123` + */ + boundaryId?: string; + /** + * Required. The parent resource under which the Boundary will be created. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Boundary; + } + export interface Params$Resource$Folders$Boundaries$Delete extends StandardParameters { + /** + * Required. The name of the Boundary to delete. Format: `organizations/{organization_id\}/boundaries/{boundary_id\}` or `folders/{folder_id\}/boundaries/{boundary_id\}` + */ + name?: string; + } + export interface Params$Resource$Folders$Boundaries$Get extends StandardParameters { + /** + * Required. The name of the Boundary to retrieve. Format: `organizations/{organization_id\}/boundaries/{boundary_id\}` or `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` + */ + name?: string; + } + export interface Params$Resource$Folders$Boundaries$List extends StandardParameters { + /** + * Optional. The maximum number of Boundaries to return in the response. The service may return fewer Boundaries than requested. If unspecified, at most 100 Boundaries will be returned. The maximum value is 100; values above 100 will be coerced to 100. + */ + pageSize?: number; + /** + * Optional. A pagination token received from a previous call to `ListBoundaries` that indicates from where listing should continue. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The name of the parent resource whose Boundaries are being listed. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` + */ + parent?: string; + } + export interface Params$Resource$Folders$Boundaries$Patch extends StandardParameters { + /** + * Identifier. The unique resource name of the Boundary. Format: - `organizations/{organization_id\}/boundaries/{boundary_id\}` - `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` + */ + name?: string; + /** + * Optional. The list of fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Boundary; + } + + export class Resource$Folders$Capabilities { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the Capability identified by the supplied resource name. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.folders.capabilities.get({ + * // Required. The name of the capability to get. For example, `folders/123/capabilities/app-management` + * name: 'folders/my-folder/capabilities/my-capabilitie', + * }); + * console.log(res.data); + * + * // Example response * // { - * // "capabilityConfigs": [], - * // "nextPageToken": "my_nextPageToken" + * // "name": "my_name", + * // "value": false * // } * } * @@ -3938,57 +4393,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Folders$Capabilityconfigs$List, + get( + params: Params$Resource$Folders$Capabilities$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Folders$Capabilityconfigs$List, + get( + params?: Params$Resource$Folders$Capabilities$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Folders$Capabilityconfigs$List, + ): Promise>; + get( + params: Params$Resource$Folders$Capabilities$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Folders$Capabilityconfigs$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Folders$Capabilityconfigs$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Folders$Capabilities$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + params: Params$Resource$Folders$Capabilities$Get, + callback: BodyResponseCallback ): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Folders$Capabilityconfigs$List - | BodyResponseCallback + | Params$Resource$Folders$Capabilities$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Folders$Capabilityconfigs$List; + {}) as Params$Resource$Folders$Capabilities$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Folders$Capabilityconfigs$List; + params = {} as Params$Resource$Folders$Capabilities$Get; options = {}; } @@ -4002,34 +4452,29 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+parent}/capabilityConfigs').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the `display_name`, `types` and `boundaries` of the CapabilityConfig identified by the specified `name` (for example, `folders/123456789/capabilityConfigs/my-capability-config`). + * Updates the Capability. * @example * ```js * // Before running the sample: @@ -4058,25 +4503,18 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.folders.capabilityConfigs.patch({ - * // Identifier. The unique resource name of the CapabilityConfig. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` - * name: 'folders/my-folder/capabilityConfigs/my-capabilityConfig', - * // Optional. The list of fields to update. + * const res = await cloudresourcemanager.folders.capabilities.patch({ + * // Immutable. Identifier. The resource name of the capability. Must be in the following form: * `folders/{folder_id\}/capabilities/{capability_name\}` For example, `folders/123/capabilities/app-management` Following are the allowed {capability_name\} values: * `app-management` + * name: 'folders/my-folder/capabilities/my-capabilitie', + * // Optional. The list of fields to update. Only [Capability.value] can be updated. * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "boundaries": [], - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "etag": "my_etag", - * // "managementProject": "my_managementProject", * // "name": "my_name", - * // "state": "my_state", - * // "types": [], - * // "updateTime": "my_updateTime" + * // "value": false * // } * }, * }); @@ -4105,31 +4543,31 @@ export namespace cloudresourcemanager_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Folders$Capabilityconfigs$Patch, + params: Params$Resource$Folders$Capabilities$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Folders$Capabilityconfigs$Patch, + params?: Params$Resource$Folders$Capabilities$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Folders$Capabilityconfigs$Patch, + params: Params$Resource$Folders$Capabilities$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Folders$Capabilityconfigs$Patch, + params: Params$Resource$Folders$Capabilities$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Folders$Capabilityconfigs$Patch, + params: Params$Resource$Folders$Capabilities$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Folders$Capabilityconfigs$Patch + | Params$Resource$Folders$Capabilities$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -4144,12 +4582,12 @@ export namespace cloudresourcemanager_v3 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Folders$Capabilityconfigs$Patch; + {}) as Params$Resource$Folders$Capabilities$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Folders$Capabilityconfigs$Patch; + params = {} as Params$Resource$Folders$Capabilities$Patch; options = {}; } @@ -4185,71 +4623,36 @@ export namespace cloudresourcemanager_v3 { } } - export interface Params$Resource$Folders$Capabilityconfigs$Create extends StandardParameters { - /** - * Required. The user-assigned ID for the CapabilityConfig, which will become the final component of the CapabilityConfig's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-capability-config-123` - */ - capabilityConfigId?: string; - /** - * Required. The parent resource under which the CapabilityConfig will be created. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` or `projects/{project_number\}` - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CapabilityConfig; - } - export interface Params$Resource$Folders$Capabilityconfigs$Delete extends StandardParameters { - /** - * Required. The name of the CapabilityConfig to delete. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` - */ - name?: string; - } - export interface Params$Resource$Folders$Capabilityconfigs$Get extends StandardParameters { + export interface Params$Resource$Folders$Capabilities$Get extends StandardParameters { /** - * Required. The name of the CapabilityConfig to retrieve. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` Example: `folders/123456789/capabilityConfigs/my-capability-config` + * Required. The name of the capability to get. For example, `folders/123/capabilities/app-management` */ name?: string; } - export interface Params$Resource$Folders$Capabilityconfigs$List extends StandardParameters { - /** - * Optional. The maximum number of CapabilityConfigs to return in the response. The service may return fewer CapabilityConfigs than requested. If unspecified, at most 100 CapabilityConfigs will be returned. The maximum value is 100; values above 100 will be coerced to 100. - */ - pageSize?: number; - /** - * Optional. A pagination token received from a previous call to `ListCapabilityConfigs` that indicates from where listing should continue. Provide this to retrieve the subsequent page. - */ - pageToken?: string; - /** - * Required. The name of the parent resource whose CapabilityConfigs are being listed. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` - */ - parent?: string; - } - export interface Params$Resource$Folders$Capabilityconfigs$Patch extends StandardParameters { + export interface Params$Resource$Folders$Capabilities$Patch extends StandardParameters { /** - * Identifier. The unique resource name of the CapabilityConfig. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` + * Immutable. Identifier. The resource name of the capability. Must be in the following form: * `folders/{folder_id\}/capabilities/{capability_name\}` For example, `folders/123/capabilities/app-management` Following are the allowed {capability_name\} values: * `app-management` */ name?: string; /** - * Optional. The list of fields to update. + * Optional. The list of fields to update. Only [Capability.value] can be updated. */ updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$CapabilityConfig; + requestBody?: Schema$Capability; } - export class Resource$Liens { + export class Resource$Folders$Capabilityconfigs { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Create a Lien which applies to the resource denoted by the `parent` field. Callers of this method will require permission on the `parent` resource. For example, applying to `projects/1234` requires permission `resourcemanager.projects.updateLiens`. NOTE: Some resources may limit the number of Liens which may be applied. + * Creates a CapabilityConfig under a parent Organization, Folder or Project. Creating a CapabilityConfig triggers the creation of a Management Project if one is not supplied. * @example * ```js * // Before running the sample: @@ -4270,10 +4673,7 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4281,17 +4681,25 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.liens.create({ + * const res = await cloudresourcemanager.folders.capabilityConfigs.create({ + * // Required. The user-assigned ID for the CapabilityConfig, which will become the final component of the CapabilityConfig's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-capability-config-123` + * capabilityConfigId: 'placeholder-value', + * // Required. The parent resource under which the CapabilityConfig will be created. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` or `projects/{project_number\}` + * parent: 'folders/my-folder', + * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "boundaries": [], * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", * // "name": "my_name", - * // "origin": "my_origin", - * // "parent": "my_parent", - * // "reason": "my_reason", - * // "restrictions": [] + * // "state": "my_state", + * // "types": [], + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -4299,12 +4707,11 @@ export namespace cloudresourcemanager_v3 { * * // Example response * // { - * // "createTime": "my_createTime", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "origin": "my_origin", - * // "parent": "my_parent", - * // "reason": "my_reason", - * // "restrictions": [] + * // "response": {} * // } * } * @@ -4321,50 +4728,51 @@ export namespace cloudresourcemanager_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Liens$Create, + params: Params$Resource$Folders$Capabilityconfigs$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Liens$Create, + params?: Params$Resource$Folders$Capabilityconfigs$Create, options?: MethodOptions - ): Promise>; + ): Promise>; create( - params: Params$Resource$Liens$Create, + params: Params$Resource$Folders$Capabilityconfigs$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Liens$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Folders$Capabilityconfigs$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; create( - params: Params$Resource$Liens$Create, - callback: BodyResponseCallback + params: Params$Resource$Folders$Capabilityconfigs$Create, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; + create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Liens$Create - | BodyResponseCallback + | Params$Resource$Folders$Capabilityconfigs$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Liens$Create; + let params = (paramsOrCallback || + {}) as Params$Resource$Folders$Capabilityconfigs$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Liens$Create; + params = {} as Params$Resource$Folders$Capabilityconfigs$Create; options = {}; } @@ -4378,29 +4786,32 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/liens').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/{+parent}/capabilityConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Delete a Lien by `name`. Callers of this method will require permission on the `parent` resource. For example, a Lien with a `parent` of `projects/1234` requires permission `resourcemanager.projects.updateLiens`. + * Deletes the CapabilityConfig identified by the specified `name` (for example, `folders/123456789/capabilityConfigs/my-capability-config`). * @example * ```js * // Before running the sample: @@ -4421,10 +4832,7 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -4432,14 +4840,20 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.liens.delete({ - * // Required. The name/identifier of the Lien to delete. - * name: 'liens/.*', + * const res = await cloudresourcemanager.folders.capabilityConfigs.delete({ + * // Required. The name of the CapabilityConfig to delete. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` + * name: 'folders/my-folder/capabilityConfigs/my-capabilityConfig', * }); * console.log(res.data); * * // Example response - * // {} + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } * } * * main().catch(e => { @@ -4455,50 +4869,51 @@ export namespace cloudresourcemanager_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Liens$Delete, + params: Params$Resource$Folders$Capabilityconfigs$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Liens$Delete, + params?: Params$Resource$Folders$Capabilityconfigs$Delete, options?: MethodOptions - ): Promise>; + ): Promise>; delete( - params: Params$Resource$Liens$Delete, + params: Params$Resource$Folders$Capabilityconfigs$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Liens$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Folders$Capabilityconfigs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Liens$Delete, - callback: BodyResponseCallback + params: Params$Resource$Folders$Capabilityconfigs$Delete, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; + delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Liens$Delete - | BodyResponseCallback + | Params$Resource$Folders$Capabilityconfigs$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Liens$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Folders$Capabilityconfigs$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Liens$Delete; + params = {} as Params$Resource$Folders$Capabilityconfigs$Delete; options = {}; } @@ -4524,17 +4939,17 @@ export namespace cloudresourcemanager_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieve a Lien by `name`. Callers of this method will require permission on the `parent` resource. For example, a Lien with a `parent` of `projects/1234` requires permission `resourcemanager.projects.get` + * Retrieves the CapabilityConfig identified by the specified `name` (for example, `folders/123456789/capabilityConfigs/my-capability-config`). * @example * ```js * // Before running the sample: @@ -4566,20 +4981,23 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.liens.get({ - * // Required. The name/identifier of the Lien. - * name: 'liens/.*', + * const res = await cloudresourcemanager.folders.capabilityConfigs.get({ + * // Required. The name of the CapabilityConfig to retrieve. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` Example: `folders/123456789/capabilityConfigs/my-capability-config` + * name: 'folders/my-folder/capabilityConfigs/my-capabilityConfig', * }); * console.log(res.data); * * // Example response * // { + * // "boundaries": [], * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", * // "name": "my_name", - * // "origin": "my_origin", - * // "parent": "my_parent", - * // "reason": "my_reason", - * // "restrictions": [] + * // "state": "my_state", + * // "types": [], + * // "updateTime": "my_updateTime" * // } * } * @@ -4596,50 +5014,52 @@ export namespace cloudresourcemanager_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Liens$Get, + params: Params$Resource$Folders$Capabilityconfigs$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Liens$Get, + params?: Params$Resource$Folders$Capabilityconfigs$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Liens$Get, + params: Params$Resource$Folders$Capabilityconfigs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Liens$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Folders$Capabilityconfigs$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Liens$Get, - callback: BodyResponseCallback + params: Params$Resource$Folders$Capabilityconfigs$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Liens$Get - | BodyResponseCallback + | Params$Resource$Folders$Capabilityconfigs$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Liens$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Folders$Capabilityconfigs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Liens$Get; + params = {} as Params$Resource$Folders$Capabilityconfigs$Get; options = {}; } @@ -4665,17 +5085,17 @@ export namespace cloudresourcemanager_v3 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * List all Liens applied to the `parent` resource. Callers of this method will require permission on the `parent` resource. For example, a Lien with a `parent` of `projects/1234` requires permission `resourcemanager.projects.get`. + * Lists CapabilityConfigs that are direct children of the specified organization, folder or project resource. * @example * ```js * // Before running the sample: @@ -4707,19 +5127,19 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.liens.list({ - * // The maximum number of items to return. This is a suggestion for the server. The server can return fewer liens than requested. If unspecified, server picks an appropriate default. + * const res = await cloudresourcemanager.folders.capabilityConfigs.list({ + * // Optional. The maximum number of CapabilityConfigs to return in the response. The service may return fewer CapabilityConfigs than requested. If unspecified, at most 100 CapabilityConfigs will be returned. The maximum value is 100; values above 100 will be coerced to 100. * pageSize: 'placeholder-value', - * // The `next_page_token` value returned from a previous List request, if any. + * // Optional. A pagination token received from a previous call to `ListCapabilityConfigs` that indicates from where listing should continue. Provide this to retrieve the subsequent page. * pageToken: 'placeholder-value', - * // Required. The name of the resource to list all attached Liens. For example, `projects/1234`. (google.api.field_policy).resource_type annotation is not set since the parent depends on the meta api implementation. This field could be a project or other sub project resources. - * parent: 'placeholder-value', + * // Required. The name of the parent resource whose CapabilityConfigs are being listed. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` + * parent: 'folders/my-folder', * }); * console.log(res.data); * * // Example response * // { - * // "liens": [], + * // "capabilityConfigs": [], * // "nextPageToken": "my_nextPageToken" * // } * } @@ -4737,51 +5157,56 @@ export namespace cloudresourcemanager_v3 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Liens$List, + params: Params$Resource$Folders$Capabilityconfigs$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Liens$List, + params?: Params$Resource$Folders$Capabilityconfigs$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Liens$List, + params: Params$Resource$Folders$Capabilityconfigs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Liens$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Folders$Capabilityconfigs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Liens$List, - callback: BodyResponseCallback + params: Params$Resource$Folders$Capabilityconfigs$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Liens$List - | BodyResponseCallback + | Params$Resource$Folders$Capabilityconfigs$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Liens$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Folders$Capabilityconfigs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Liens$List; + params = {} as Params$Resource$Folders$Capabilityconfigs$List; options = {}; } @@ -4795,83 +5220,1959 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/liens').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/{+parent}/capabilityConfigs').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - export interface Params$Resource$Liens$Create extends StandardParameters { /** - * Request body metadata - */ - requestBody?: Schema$Lien; - } - export interface Params$Resource$Liens$Delete extends StandardParameters { + * Updates the `display_name`, `types` and `boundaries` of the CapabilityConfig identified by the specified `name` (for example, `folders/123456789/capabilityConfigs/my-capability-config`). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.folders.capabilityConfigs.patch({ + * // Identifier. The unique resource name of the CapabilityConfig. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` + * name: 'folders/my-folder/capabilityConfigs/my-capabilityConfig', + * // Optional. The list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "boundaries": [], + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", + * // "name": "my_name", + * // "state": "my_state", + * // "types": [], + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Folders$Capabilityconfigs$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Folders$Capabilityconfigs$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Folders$Capabilityconfigs$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Folders$Capabilityconfigs$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Folders$Capabilityconfigs$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Folders$Capabilityconfigs$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Folders$Capabilityconfigs$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Folders$Capabilityconfigs$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Folders$Capabilityconfigs$Create extends StandardParameters { /** - * Required. The name/identifier of the Lien to delete. + * Required. The user-assigned ID for the CapabilityConfig, which will become the final component of the CapabilityConfig's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-capability-config-123` + */ + capabilityConfigId?: string; + /** + * Required. The parent resource under which the CapabilityConfig will be created. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` or `projects/{project_number\}` + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CapabilityConfig; + } + export interface Params$Resource$Folders$Capabilityconfigs$Delete extends StandardParameters { + /** + * Required. The name of the CapabilityConfig to delete. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` */ name?: string; } - export interface Params$Resource$Liens$Get extends StandardParameters { + export interface Params$Resource$Folders$Capabilityconfigs$Get extends StandardParameters { /** - * Required. The name/identifier of the Lien. + * Required. The name of the CapabilityConfig to retrieve. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` Example: `folders/123456789/capabilityConfigs/my-capability-config` */ name?: string; } - export interface Params$Resource$Liens$List extends StandardParameters { + export interface Params$Resource$Folders$Capabilityconfigs$List extends StandardParameters { /** - * The maximum number of items to return. This is a suggestion for the server. The server can return fewer liens than requested. If unspecified, server picks an appropriate default. + * Optional. The maximum number of CapabilityConfigs to return in the response. The service may return fewer CapabilityConfigs than requested. If unspecified, at most 100 CapabilityConfigs will be returned. The maximum value is 100; values above 100 will be coerced to 100. */ pageSize?: number; /** - * The `next_page_token` value returned from a previous List request, if any. + * Optional. A pagination token received from a previous call to `ListCapabilityConfigs` that indicates from where listing should continue. Provide this to retrieve the subsequent page. */ pageToken?: string; /** - * Required. The name of the resource to list all attached Liens. For example, `projects/1234`. (google.api.field_policy).resource_type annotation is not set since the parent depends on the meta api implementation. This field could be a project or other sub project resources. + * Required. The name of the parent resource whose CapabilityConfigs are being listed. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` + */ + parent?: string; + } + export interface Params$Resource$Folders$Capabilityconfigs$Patch extends StandardParameters { + /** + * Identifier. The unique resource name of the CapabilityConfig. Format: `organizations/{organization\}/capabilityConfigs/{capabilityConfig\}` or, `folders/{folder\}/capabilityConfigs/{capabilityConfig\}` or, `projects/{project\}/capabilityConfigs/{capabilityConfig\}` + */ + name?: string; + /** + * Optional. The list of fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CapabilityConfig; + } + + export class Resource$Liens { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create a Lien which applies to the resource denoted by the `parent` field. Callers of this method will require permission on the `parent` resource. For example, applying to `projects/1234` requires permission `resourcemanager.projects.updateLiens`. NOTE: Some resources may limit the number of Liens which may be applied. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.liens.create({ + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "name": "my_name", + * // "origin": "my_origin", + * // "parent": "my_parent", + * // "reason": "my_reason", + * // "restrictions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "name": "my_name", + * // "origin": "my_origin", + * // "parent": "my_parent", + * // "reason": "my_reason", + * // "restrictions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Liens$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Liens$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Liens$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Liens$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Liens$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Liens$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Liens$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Liens$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/liens').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Delete a Lien by `name`. Callers of this method will require permission on the `parent` resource. For example, a Lien with a `parent` of `projects/1234` requires permission `resourcemanager.projects.updateLiens`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.liens.delete({ + * // Required. The name/identifier of the Lien to delete. + * name: 'liens/.*', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Liens$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Liens$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Liens$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Liens$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Liens$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Liens$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Liens$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Liens$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieve a Lien by `name`. Callers of this method will require permission on the `parent` resource. For example, a Lien with a `parent` of `projects/1234` requires permission `resourcemanager.projects.get` + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.liens.get({ + * // Required. The name/identifier of the Lien. + * name: 'liens/.*', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "name": "my_name", + * // "origin": "my_origin", + * // "parent": "my_parent", + * // "reason": "my_reason", + * // "restrictions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Liens$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Liens$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Liens$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Liens$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Liens$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Liens$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Liens$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Liens$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * List all Liens applied to the `parent` resource. Callers of this method will require permission on the `parent` resource. For example, a Lien with a `parent` of `projects/1234` requires permission `resourcemanager.projects.get`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.liens.list({ + * // The maximum number of items to return. This is a suggestion for the server. The server can return fewer liens than requested. If unspecified, server picks an appropriate default. + * pageSize: 'placeholder-value', + * // The `next_page_token` value returned from a previous List request, if any. + * pageToken: 'placeholder-value', + * // Required. The name of the resource to list all attached Liens. For example, `projects/1234`. (google.api.field_policy).resource_type annotation is not set since the parent depends on the meta api implementation. This field could be a project or other sub project resources. + * parent: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "liens": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Liens$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Liens$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Liens$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Liens$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Liens$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Liens$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Liens$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Liens$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/liens').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Liens$Create extends StandardParameters { + /** + * Request body metadata + */ + requestBody?: Schema$Lien; + } + export interface Params$Resource$Liens$Delete extends StandardParameters { + /** + * Required. The name/identifier of the Lien to delete. + */ + name?: string; + } + export interface Params$Resource$Liens$Get extends StandardParameters { + /** + * Required. The name/identifier of the Lien. + */ + name?: string; + } + export interface Params$Resource$Liens$List extends StandardParameters { + /** + * The maximum number of items to return. This is a suggestion for the server. The server can return fewer liens than requested. If unspecified, server picks an appropriate default. + */ + pageSize?: number; + /** + * The `next_page_token` value returned from a previous List request, if any. + */ + pageToken?: string; + /** + * Required. The name of the resource to list all attached Liens. For example, `projects/1234`. (google.api.field_policy).resource_type annotation is not set since the parent depends on the meta api implementation. This field could be a project or other sub project resources. + */ + parent?: string; + } + + export class Resource$Locations { + context: APIRequestContext; + effectiveTagBindingCollections: Resource$Locations$Effectivetagbindingcollections; + tagBindingCollections: Resource$Locations$Tagbindingcollections; + constructor(context: APIRequestContext) { + this.context = context; + this.effectiveTagBindingCollections = + new Resource$Locations$Effectivetagbindingcollections(this.context); + this.tagBindingCollections = new Resource$Locations$Tagbindingcollections( + this.context + ); + } + } + + export class Resource$Locations$Effectivetagbindingcollections { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns effective tag bindings on a GCP resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await cloudresourcemanager.locations.effectiveTagBindingCollections.get({ + * // Required. The full name of the EffectiveTagBindingCollection in format: `locations/{location\}/effectiveTagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the resource the TagBindings are bound to. E.g. "locations/global/effectiveTagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" + * name: 'locations/my-location/effectiveTagBindingCollections/my-effectiveTagBindingCollection', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "effectiveTags": {}, + * // "fullResourceName": "my_fullResourceName", + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Locations$Effectivetagbindingcollections$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Locations$Effectivetagbindingcollections$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Locations$Effectivetagbindingcollections$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Locations$Effectivetagbindingcollections$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Locations$Effectivetagbindingcollections$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Locations$Effectivetagbindingcollections$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Locations$Effectivetagbindingcollections$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Locations$Effectivetagbindingcollections$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Locations$Effectivetagbindingcollections$Get extends StandardParameters { + /** + * Required. The full name of the EffectiveTagBindingCollection in format: `locations/{location\}/effectiveTagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the resource the TagBindings are bound to. E.g. "locations/global/effectiveTagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" + */ + name?: string; + } + + export class Resource$Locations$Tagbindingcollections { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns tag bindings directly attached to a GCP resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.locations.tagBindingCollections.get({ + * // Required. The full name of the TagBindingCollection in format: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the enoded-full-resource-name is the UTF-8 encoded name of the resource the TagBindings are bound to. E.g. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" + * name: 'locations/my-location/tagBindingCollections/my-tagBindingCollection', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "fullResourceName": "my_fullResourceName", + * // "name": "my_name", + * // "tags": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Locations$Tagbindingcollections$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Locations$Tagbindingcollections$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Locations$Tagbindingcollections$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Locations$Tagbindingcollections$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Locations$Tagbindingcollections$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Locations$Tagbindingcollections$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Locations$Tagbindingcollections$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Locations$Tagbindingcollections$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates tag bindings directly attached to a GCP resource. Update_mask can be kept empty or "*". + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.locations.tagBindingCollections.patch({ + * // Identifier. The name of the TagBindingCollection, following the convention: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the GCP resource the TagBindings are bound to. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" + * name: 'locations/my-location/tagBindingCollections/my-tagBindingCollection', + * // Optional. An update mask to selectively update fields. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "fullResourceName": "my_fullResourceName", + * // "name": "my_name", + * // "tags": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Locations$Tagbindingcollections$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Locations$Tagbindingcollections$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Locations$Tagbindingcollections$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Locations$Tagbindingcollections$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Locations$Tagbindingcollections$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Locations$Tagbindingcollections$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Locations$Tagbindingcollections$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Locations$Tagbindingcollections$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Locations$Tagbindingcollections$Get extends StandardParameters { + /** + * Required. The full name of the TagBindingCollection in format: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the enoded-full-resource-name is the UTF-8 encoded name of the resource the TagBindings are bound to. E.g. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" + */ + name?: string; + } + export interface Params$Resource$Locations$Tagbindingcollections$Patch extends StandardParameters { + /** + * Identifier. The name of the TagBindingCollection, following the convention: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the GCP resource the TagBindings are bound to. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" + */ + name?: string; + /** + * Optional. An update mask to selectively update fields. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TagBindingCollection; + } + + export class Resource$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.operations.get({ + * // The name of the operation resource. + * name: 'operations/.*', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Operations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Operations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + + export class Resource$Organizations { + context: APIRequestContext; + boundaries: Resource$Organizations$Boundaries; + capabilityConfigs: Resource$Organizations$Capabilityconfigs; + constructor(context: APIRequestContext) { + this.context = context; + this.boundaries = new Resource$Organizations$Boundaries(this.context); + this.capabilityConfigs = new Resource$Organizations$Capabilityconfigs( + this.context + ); + } + + /** + * Fetches an organization resource identified by the specified resource name. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.organizations.get({ + * // Required. The resource name of the Organization to fetch. This is the organization's relative path in the API, formatted as "organizations/[organizationId]". For example, "organizations/1234". + * name: 'organizations/my-organization', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "deleteTime": "my_deleteTime", + * // "directoryCustomerId": "my_directoryCustomerId", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "name": "my_name", + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Organizations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Organizations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Organizations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Organizations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Organizations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Organizations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the BoundaryConfig identified by the specified `name` (for example, `folders/123456789/boundaryConfig`). + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.organizations.getBoundaryConfig({ + * // Required. The name of the BoundaryConfig to retrieve. Format: `organizations/{organization\}/boundaryConfig` or `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` + * name: 'organizations/my-organization/boundaryConfig', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "name": "my_name", + * // "tagKey": "my_tagKey", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getBoundaryConfig( + params: Params$Resource$Organizations$Getboundaryconfig, + options: StreamMethodOptions + ): Promise>; + getBoundaryConfig( + params?: Params$Resource$Organizations$Getboundaryconfig, + options?: MethodOptions + ): Promise>; + getBoundaryConfig( + params: Params$Resource$Organizations$Getboundaryconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getBoundaryConfig( + params: Params$Resource$Organizations$Getboundaryconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getBoundaryConfig( + params: Params$Resource$Organizations$Getboundaryconfig, + callback: BodyResponseCallback + ): void; + getBoundaryConfig( + callback: BodyResponseCallback + ): void; + getBoundaryConfig( + paramsOrCallback?: + | Params$Resource$Organizations$Getboundaryconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizations$Getboundaryconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizations$Getboundaryconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for an organization resource. The policy may be empty if no such policy or resource exists. The `resource` field should be the organization's resource name, for example: "organizations/123". Authorization requires the IAM permission `resourcemanager.organizations.getIamPolicy` on the specified organization. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/cloudresourcemanager.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const cloudresourcemanager = google.cloudresourcemanager('v3'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await cloudresourcemanager.organizations.getIamPolicy({ + * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: 'organizations/my-organization', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "options": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - parent?: string; - } + getIamPolicy( + params: Params$Resource$Organizations$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Organizations$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Organizations$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Organizations$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Organizations$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Organizations$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizations$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; - export class Resource$Locations { - context: APIRequestContext; - effectiveTagBindingCollections: Resource$Locations$Effectivetagbindingcollections; - tagBindingCollections: Resource$Locations$Tagbindingcollections; - constructor(context: APIRequestContext) { - this.context = context; - this.effectiveTagBindingCollections = - new Resource$Locations$Effectivetagbindingcollections(this.context); - this.tagBindingCollections = new Resource$Locations$Tagbindingcollections( - this.context - ); - } - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizations$Getiampolicy; + options = {}; + } - export class Resource$Locations$Effectivetagbindingcollections { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://cloudresourcemanager.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v3/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Returns effective tag bindings on a GCP resource. + * Searches organization resources that are visible to the user and satisfy the specified filter. This method returns organizations in an unspecified order. New organizations do not necessarily appear at the end of the results, and may take a small amount of time to appear. Search will only return organizations on which the user has the permission `resourcemanager.organizations.get` or has super admin privileges. * @example * ```js * // Before running the sample: @@ -4903,18 +7204,20 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await cloudresourcemanager.locations.effectiveTagBindingCollections.get({ - * // Required. The full name of the EffectiveTagBindingCollection in format: `locations/{location\}/effectiveTagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the resource the TagBindings are bound to. E.g. "locations/global/effectiveTagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" - * name: 'locations/my-location/effectiveTagBindingCollections/my-effectiveTagBindingCollection', - * }); + * const res = await cloudresourcemanager.organizations.search({ + * // Optional. The maximum number of organizations to return in the response. The server can return fewer organizations than requested. If unspecified, server picks an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A pagination token returned from a previous call to `SearchOrganizations` that indicates from where listing should continue. + * pageToken: 'placeholder-value', + * // Optional. An optional query string used to filter the Organizations to return in the response. Query rules are case-insensitive. ``` | Field | Description | |------------------|--------------------------------------------| | directoryCustomerId, owner.directoryCustomerId | Filters by directory customer id. | | domain | Filters by domain. | ``` Organizations may be queried by `directoryCustomerId` or by `domain`, where the domain is a G Suite domain, for example: * Query `directorycustomerid:123456789` returns Organization resources with `owner.directory_customer_id` equal to `123456789`. * Query `domain:google.com` returns Organization resources corresponding to the domain `google.com`. + * query: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "effectiveTags": {}, - * // "fullResourceName": "my_fullResourceName", - * // "name": "my_name" + * // "nextPageToken": "my_nextPageToken", + * // "organizations": [] * // } * } * @@ -4930,58 +7233,57 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Locations$Effectivetagbindingcollections$Get, + search( + params: Params$Resource$Organizations$Search, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Locations$Effectivetagbindingcollections$Get, + search( + params?: Params$Resource$Organizations$Search, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Locations$Effectivetagbindingcollections$Get, + ): Promise>; + search( + params: Params$Resource$Organizations$Search, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Locations$Effectivetagbindingcollections$Get, + search( + params: Params$Resource$Organizations$Search, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Locations$Effectivetagbindingcollections$Get, - callback: BodyResponseCallback + search( + params: Params$Resource$Organizations$Search, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + search( + callback: BodyResponseCallback ): void; - get( + search( paramsOrCallback?: - | Params$Resource$Locations$Effectivetagbindingcollections$Get - | BodyResponseCallback + | Params$Resource$Organizations$Search + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Locations$Effectivetagbindingcollections$Get; + {}) as Params$Resource$Organizations$Search; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Locations$Effectivetagbindingcollections$Get; + params = {} as Params$Resource$Organizations$Search; options = {}; } @@ -4995,45 +7297,32 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v3/organizations:search').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Locations$Effectivetagbindingcollections$Get extends StandardParameters { - /** - * Required. The full name of the EffectiveTagBindingCollection in format: `locations/{location\}/effectiveTagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the resource the TagBindings are bound to. E.g. "locations/global/effectiveTagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" - */ - name?: string; - } - - export class Resource$Locations$Tagbindingcollections { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Returns tag bindings directly attached to a GCP resource. + * Sets the access control policy on an organization resource. Replaces any existing policy. The `resource` field should be the organization's resource name, for example: "organizations/123". Authorization requires the IAM permission `resourcemanager.organizations.setIamPolicy` on the specified organization. * @example * ```js * // Before running the sample: @@ -5054,10 +7343,7 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5065,18 +7351,27 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.locations.tagBindingCollections.get({ - * // Required. The full name of the TagBindingCollection in format: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the enoded-full-resource-name is the UTF-8 encoded name of the resource the TagBindings are bound to. E.g. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" - * name: 'locations/my-location/tagBindingCollections/my-tagBindingCollection', + * const res = await cloudresourcemanager.organizations.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: 'organizations/my-organization', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "auditConfigs": [], + * // "bindings": [], * // "etag": "my_etag", - * // "fullResourceName": "my_fullResourceName", - * // "name": "my_name", - * // "tags": {} + * // "version": 0 * // } * } * @@ -5092,54 +7387,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Locations$Tagbindingcollections$Get, + setIamPolicy( + params: Params$Resource$Organizations$Setiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Locations$Tagbindingcollections$Get, + setIamPolicy( + params?: Params$Resource$Organizations$Setiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Locations$Tagbindingcollections$Get, + ): Promise>; + setIamPolicy( + params: Params$Resource$Organizations$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Locations$Tagbindingcollections$Get, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Organizations$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Locations$Tagbindingcollections$Get, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Organizations$Setiampolicy, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Locations$Tagbindingcollections$Get - | BodyResponseCallback + | Params$Resource$Organizations$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Locations$Tagbindingcollections$Get; + {}) as Params$Resource$Organizations$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Locations$Tagbindingcollections$Get; + params = {} as Params$Resource$Organizations$Setiampolicy; options = {}; } @@ -5153,29 +7446,32 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v3/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates tag bindings directly attached to a GCP resource. Update_mask can be kept empty or "*". + * Returns the permissions that a caller has on the specified organization. The `resource` field should be the organization's resource name, for example: "organizations/123". There are no permissions required for making this API call. * @example * ```js * // Before running the sample: @@ -5196,7 +7492,10 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5204,20 +7503,15 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.locations.tagBindingCollections.patch({ - * // Identifier. The name of the TagBindingCollection, following the convention: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the GCP resource the TagBindings are bound to. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" - * name: 'locations/my-location/tagBindingCollections/my-tagBindingCollection', - * // Optional. An update mask to selectively update fields. - * updateMask: 'placeholder-value', + * const res = await cloudresourcemanager.organizations.testIamPermissions({ + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: 'organizations/my-organization', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "etag": "my_etag", - * // "fullResourceName": "my_fullResourceName", - * // "name": "my_name", - * // "tags": {} + * // "permissions": [] * // } * }, * }); @@ -5225,11 +7519,7 @@ export namespace cloudresourcemanager_v3 { * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "permissions": [] * // } * } * @@ -5245,52 +7535,56 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Locations$Tagbindingcollections$Patch, + testIamPermissions( + params: Params$Resource$Organizations$Testiampermissions, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Locations$Tagbindingcollections$Patch, + testIamPermissions( + params?: Params$Resource$Organizations$Testiampermissions, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Locations$Tagbindingcollections$Patch, + ): Promise>; + testIamPermissions( + params: Params$Resource$Organizations$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Locations$Tagbindingcollections$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Organizations$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Locations$Tagbindingcollections$Patch, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Organizations$Testiampermissions, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Locations$Tagbindingcollections$Patch - | BodyResponseCallback + | Params$Resource$Organizations$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Locations$Tagbindingcollections$Patch; + {}) as Params$Resource$Organizations$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Locations$Tagbindingcollections$Patch; + params = {} as Params$Resource$Organizations$Testiampermissions; options = {}; } @@ -5304,58 +7598,32 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v3/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Locations$Tagbindingcollections$Get extends StandardParameters { - /** - * Required. The full name of the TagBindingCollection in format: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the enoded-full-resource-name is the UTF-8 encoded name of the resource the TagBindings are bound to. E.g. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" - */ - name?: string; - } - export interface Params$Resource$Locations$Tagbindingcollections$Patch extends StandardParameters { - /** - * Identifier. The name of the TagBindingCollection, following the convention: `locations/{location\}/tagBindingCollections/{encoded-full-resource-name\}` where the encoded-full-resource-name is the UTF-8 encoded name of the GCP resource the TagBindings are bound to. "locations/global/tagBindingCollections/%2f%2fcloudresourcemanager.googleapis.com%2fprojects%2f123" - */ - name?: string; - /** - * Optional. An update mask to selectively update fields. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TagBindingCollection; - } - - export class Resource$Operations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. + * Updates the BoundaryConfig identified by the specified `name` (for example, `folders/123456789/boundaryConfig`). * @example * ```js * // Before running the sample: @@ -5376,10 +7644,7 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5387,9 +7652,22 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.operations.get({ - * // The name of the operation resource. - * name: 'operations/.*', + * const res = await cloudresourcemanager.organizations.updateBoundaryConfig({ + * // Identifier. The unique resource name of the BoundaryConfig. Format: - `organizations/{organization\}/boundaryConfig` - `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` + * name: 'organizations/my-organization/boundaryConfig', + * // Optional. The list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "etag": "my_etag", + * // "name": "my_name", + * // "tagKey": "my_tagKey", + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * @@ -5415,32 +7693,34 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Operations$Get, + updateBoundaryConfig( + params: Params$Resource$Organizations$Updateboundaryconfig, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Operations$Get, + updateBoundaryConfig( + params?: Params$Resource$Organizations$Updateboundaryconfig, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Operations$Get, + updateBoundaryConfig( + params: Params$Resource$Organizations$Updateboundaryconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Operations$Get, + updateBoundaryConfig( + params: Params$Resource$Organizations$Updateboundaryconfig, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Operations$Get, + updateBoundaryConfig( + params: Params$Resource$Organizations$Updateboundaryconfig, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + updateBoundaryConfig( + callback: BodyResponseCallback + ): void; + updateBoundaryConfig( paramsOrCallback?: - | Params$Resource$Operations$Get + | Params$Resource$Organizations$Updateboundaryconfig | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -5454,12 +7734,13 @@ export namespace cloudresourcemanager_v3 { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Operations$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Organizations$Updateboundaryconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Operations$Get; + params = {} as Params$Resource$Organizations$Updateboundaryconfig; options = {}; } @@ -5474,7 +7755,7 @@ export namespace cloudresourcemanager_v3 { options: Object.assign( { url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -5495,25 +7776,89 @@ export namespace cloudresourcemanager_v3 { } } - export interface Params$Resource$Operations$Get extends StandardParameters { + export interface Params$Resource$Organizations$Get extends StandardParameters { /** - * The name of the operation resource. + * Required. The resource name of the Organization to fetch. This is the organization's relative path in the API, formatted as "organizations/[organizationId]". For example, "organizations/1234". + */ + name?: string; + } + export interface Params$Resource$Organizations$Getboundaryconfig extends StandardParameters { + /** + * Required. The name of the BoundaryConfig to retrieve. Format: `organizations/{organization\}/boundaryConfig` or `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` */ name?: string; } + export interface Params$Resource$Organizations$Getiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GetIamPolicyRequest; + } + export interface Params$Resource$Organizations$Search extends StandardParameters { + /** + * Optional. The maximum number of organizations to return in the response. The server can return fewer organizations than requested. If unspecified, server picks an appropriate default. + */ + pageSize?: number; + /** + * Optional. A pagination token returned from a previous call to `SearchOrganizations` that indicates from where listing should continue. + */ + pageToken?: string; + /** + * Optional. An optional query string used to filter the Organizations to return in the response. Query rules are case-insensitive. ``` | Field | Description | |------------------|--------------------------------------------| | directoryCustomerId, owner.directoryCustomerId | Filters by directory customer id. | | domain | Filters by domain. | ``` Organizations may be queried by `directoryCustomerId` or by `domain`, where the domain is a G Suite domain, for example: * Query `directorycustomerid:123456789` returns Organization resources with `owner.directory_customer_id` equal to `123456789`. * Query `domain:google.com` returns Organization resources corresponding to the domain `google.com`. + */ + query?: string; + } + export interface Params$Resource$Organizations$Setiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; - export class Resource$Organizations { + /** + * Request body metadata + */ + requestBody?: Schema$SetIamPolicyRequest; + } + export interface Params$Resource$Organizations$Testiampermissions extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestIamPermissionsRequest; + } + export interface Params$Resource$Organizations$Updateboundaryconfig extends StandardParameters { + /** + * Identifier. The unique resource name of the BoundaryConfig. Format: - `organizations/{organization\}/boundaryConfig` - `folders/{folder\}/boundaryConfig` Example: `folders/123456789/boundaryConfig` + */ + name?: string; + /** + * Optional. The list of fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BoundaryConfig; + } + + export class Resource$Organizations$Boundaries { context: APIRequestContext; - capabilityConfigs: Resource$Organizations$Capabilityconfigs; constructor(context: APIRequestContext) { this.context = context; - this.capabilityConfigs = new Resource$Organizations$Capabilityconfigs( - this.context - ); } /** - * Fetches an organization resource identified by the specified resource name. + * Creates a Boundary under a parent Folder or Organization. Creating a Boundary triggers the creation of a Management Project if one is not supplied. * @example * ```js * // Before running the sample: @@ -5534,10 +7879,7 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5545,22 +7887,36 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.organizations.get({ - * // Required. The resource name of the Organization to fetch. This is the organization's relative path in the API, formatted as "organizations/[organizationId]". For example, "organizations/1234". - * name: 'organizations/my-organization', + * const res = await cloudresourcemanager.organizations.boundaries.create({ + * // Required. The user-assigned ID for the Boundary, which will become the final component of the Boundary's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-boundary-123` + * boundaryId: 'placeholder-value', + * // Required. The parent resource under which the Boundary will be created. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` + * parent: 'organizations/my-organization', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", + * // "name": "my_name", + * // "resourceFilter": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "deleteTime": "my_deleteTime", - * // "directoryCustomerId": "my_directoryCustomerId", - * // "displayName": "my_displayName", - * // "etag": "my_etag", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "state": "my_state", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -5576,53 +7932,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Organizations$Get, + create( + params: Params$Resource$Organizations$Boundaries$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Organizations$Get, + create( + params?: Params$Resource$Organizations$Boundaries$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Organizations$Get, + ): Promise>; + create( + params: Params$Resource$Organizations$Boundaries$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Organizations$Boundaries$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizations$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Organizations$Boundaries$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Organizations$Get - | BodyResponseCallback + | Params$Resource$Organizations$Boundaries$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Get; + {}) as Params$Resource$Organizations$Boundaries$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizations$Get; + params = {} as Params$Resource$Organizations$Boundaries$Create; options = {}; } @@ -5636,29 +7991,32 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v3/{+parent}/boundaries').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for an organization resource. The policy may be empty if no such policy or resource exists. The `resource` field should be the organization's resource name, for example: "organizations/123". Authorization requires the IAM permission `resourcemanager.organizations.getIamPolicy` on the specified organization. + * Deletes the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`). * @example * ```js * // Before running the sample: @@ -5679,10 +8037,7 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5690,26 +8045,19 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.organizations.getIamPolicy({ - * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: 'organizations/my-organization', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "options": {} - * // } - * }, + * const res = await cloudresourcemanager.organizations.boundaries.delete({ + * // Required. The name of the Boundary to delete. Format: `organizations/{organization_id\}/boundaries/{boundary_id\}` or `folders/{folder_id\}/boundaries/{boundary_id\}` + * name: 'organizations/my-organization/boundaries/my-boundarie', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -5725,52 +8073,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Organizations$Getiampolicy, + delete( + params: Params$Resource$Organizations$Boundaries$Delete, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Organizations$Getiampolicy, + delete( + params?: Params$Resource$Organizations$Boundaries$Delete, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Organizations$Getiampolicy, + ): Promise>; + delete( + params: Params$Resource$Organizations$Boundaries$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Organizations$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizations$Boundaries$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Organizations$Getiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizations$Boundaries$Delete, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Organizations$Getiampolicy - | BodyResponseCallback + | Params$Resource$Organizations$Boundaries$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Getiampolicy; + {}) as Params$Resource$Organizations$Boundaries$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizations$Getiampolicy; + params = {} as Params$Resource$Organizations$Boundaries$Delete; options = {}; } @@ -5784,32 +8132,29 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+resource}:getIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Searches organization resources that are visible to the user and satisfy the specified filter. This method returns organizations in an unspecified order. New organizations do not necessarily appear at the end of the results, and may take a small amount of time to appear. Search will only return organizations on which the user has the permission `resourcemanager.organizations.get` or has super admin privileges. + * Retrieves the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`). * @example * ```js * // Before running the sample: @@ -5841,20 +8186,22 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.organizations.search({ - * // Optional. The maximum number of organizations to return in the response. The server can return fewer organizations than requested. If unspecified, server picks an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. A pagination token returned from a previous call to `SearchOrganizations` that indicates from where listing should continue. - * pageToken: 'placeholder-value', - * // Optional. An optional query string used to filter the Organizations to return in the response. Query rules are case-insensitive. ``` | Field | Description | |------------------|--------------------------------------------| | directoryCustomerId, owner.directoryCustomerId | Filters by directory customer id. | | domain | Filters by domain. | ``` Organizations may be queried by `directoryCustomerId` or by `domain`, where the domain is a G Suite domain, for example: * Query `directorycustomerid:123456789` returns Organization resources with `owner.directory_customer_id` equal to `123456789`. * Query `domain:google.com` returns Organization resources corresponding to the domain `google.com`. - * query: 'placeholder-value', + * const res = await cloudresourcemanager.organizations.boundaries.get({ + * // Required. The name of the Boundary to retrieve. Format: `organizations/{organization_id\}/boundaries/{boundary_id\}` or `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` + * name: 'organizations/my-organization/boundaries/my-boundarie', * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "organizations": [] + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", + * // "name": "my_name", + * // "resourceFilter": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * } * @@ -5870,57 +8217,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - search( - params: Params$Resource$Organizations$Search, + get( + params: Params$Resource$Organizations$Boundaries$Get, options: StreamMethodOptions ): Promise>; - search( - params?: Params$Resource$Organizations$Search, + get( + params?: Params$Resource$Organizations$Boundaries$Get, options?: MethodOptions - ): Promise>; - search( - params: Params$Resource$Organizations$Search, + ): Promise>; + get( + params: Params$Resource$Organizations$Boundaries$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - search( - params: Params$Resource$Organizations$Search, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - search( - params: Params$Resource$Organizations$Search, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizations$Boundaries$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - search( - callback: BodyResponseCallback + get( + params: Params$Resource$Organizations$Boundaries$Get, + callback: BodyResponseCallback ): void; - search( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Organizations$Search - | BodyResponseCallback + | Params$Resource$Organizations$Boundaries$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Search; + {}) as Params$Resource$Organizations$Boundaries$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizations$Search; + params = {} as Params$Resource$Organizations$Boundaries$Get; options = {}; } @@ -5934,32 +8276,29 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/organizations:search').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on an organization resource. Replaces any existing policy. The `resource` field should be the organization's resource name, for example: "organizations/123". Authorization requires the IAM permission `resourcemanager.organizations.setIamPolicy` on the specified organization. + * Lists Boundaries that are direct children of the specified organization or folder resource. * @example * ```js * // Before running the sample: @@ -5980,7 +8319,10 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/cloud-platform.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5988,27 +8330,20 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.organizations.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: 'organizations/my-organization', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, + * const res = await cloudresourcemanager.organizations.boundaries.list({ + * // Optional. The maximum number of Boundaries to return in the response. The service may return fewer Boundaries than requested. If unspecified, at most 100 Boundaries will be returned. The maximum value is 100; values above 100 will be coerced to 100. + * pageSize: 'placeholder-value', + * // Optional. A pagination token received from a previous call to `ListBoundaries` that indicates from where listing should continue. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The name of the parent resource whose Boundaries are being listed. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` + * parent: 'organizations/my-organization', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "boundaries": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -6024,52 +8359,54 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Organizations$Setiampolicy, + list( + params: Params$Resource$Organizations$Boundaries$List, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Organizations$Setiampolicy, + list( + params?: Params$Resource$Organizations$Boundaries$List, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Organizations$Setiampolicy, + ): Promise>; + list( + params: Params$Resource$Organizations$Boundaries$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Organizations$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizations$Boundaries$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Organizations$Setiampolicy, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizations$Boundaries$List, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Organizations$Setiampolicy - | BodyResponseCallback + | Params$Resource$Organizations$Boundaries$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Setiampolicy; + {}) as Params$Resource$Organizations$Boundaries$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizations$Setiampolicy; + params = {} as Params$Resource$Organizations$Boundaries$List; options = {}; } @@ -6083,32 +8420,32 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v3/{+parent}/boundaries').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the permissions that a caller has on the specified organization. The `resource` field should be the organization's resource name, for example: "organizations/123". There are no permissions required for making this API call. + * Updates the `display_name` and `resource_filter.tag_filter.tag_value` of the Boundary identified by the specified `name` (for example, `folders/123456789/boundaries/my-boundary`). * @example * ```js * // Before running the sample: @@ -6129,10 +8466,7 @@ export namespace cloudresourcemanager_v3 { * async function main() { * const auth = new google.auth.GoogleAuth({ * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/cloud-platform.read-only', - * ], + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6140,15 +8474,24 @@ export namespace cloudresourcemanager_v3 { * google.options({auth: authClient}); * * // Do the magic - * const res = await cloudresourcemanager.organizations.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: 'organizations/my-organization', + * const res = await cloudresourcemanager.organizations.boundaries.patch({ + * // Identifier. The unique resource name of the Boundary. Format: - `organizations/{organization_id\}/boundaries/{boundary_id\}` - `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` + * name: 'organizations/my-organization/boundaries/my-boundarie', + * // Optional. The list of fields to update. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "etag": "my_etag", + * // "managementProject": "my_managementProject", + * // "name": "my_name", + * // "resourceFilter": {}, + * // "state": "my_state", + * // "updateTime": "my_updateTime" * // } * }, * }); @@ -6156,7 +8499,11 @@ export namespace cloudresourcemanager_v3 { * * // Example response * // { - * // "permissions": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -6172,56 +8519,52 @@ export namespace cloudresourcemanager_v3 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Organizations$Testiampermissions, + patch( + params: Params$Resource$Organizations$Boundaries$Patch, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Organizations$Testiampermissions, + patch( + params?: Params$Resource$Organizations$Boundaries$Patch, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Organizations$Testiampermissions, + ): Promise>; + patch( + params: Params$Resource$Organizations$Boundaries$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Organizations$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Organizations$Testiampermissions, - callback: BodyResponseCallback + patch( + params: Params$Resource$Organizations$Boundaries$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + patch( + params: Params$Resource$Organizations$Boundaries$Patch, + callback: BodyResponseCallback ): void; - testIamPermissions( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Organizations$Testiampermissions - | BodyResponseCallback + | Params$Resource$Organizations$Boundaries$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Testiampermissions; + {}) as Params$Resource$Organizations$Boundaries$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizations$Testiampermissions; + params = {} as Params$Resource$Organizations$Boundaries$Patch; options = {}; } @@ -6235,83 +8578,83 @@ export namespace cloudresourcemanager_v3 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v3/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v3/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Organizations$Get extends StandardParameters { + export interface Params$Resource$Organizations$Boundaries$Create extends StandardParameters { /** - * Required. The resource name of the Organization to fetch. This is the organization's relative path in the API, formatted as "organizations/[organizationId]". For example, "organizations/1234". + * Required. The user-assigned ID for the Boundary, which will become the final component of the Boundary's resource name. Must be unique within the parent resource. It must be 6 to 30 lowercase ASCII letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited. Example: `my-boundary-123` */ - name?: string; - } - export interface Params$Resource$Organizations$Getiampolicy extends StandardParameters { + boundaryId?: string; /** - * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * Required. The parent resource under which the Boundary will be created. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` */ - resource?: string; + parent?: string; /** * Request body metadata */ - requestBody?: Schema$GetIamPolicyRequest; + requestBody?: Schema$Boundary; } - export interface Params$Resource$Organizations$Search extends StandardParameters { + export interface Params$Resource$Organizations$Boundaries$Delete extends StandardParameters { /** - * Optional. The maximum number of organizations to return in the response. The server can return fewer organizations than requested. If unspecified, server picks an appropriate default. + * Required. The name of the Boundary to delete. Format: `organizations/{organization_id\}/boundaries/{boundary_id\}` or `folders/{folder_id\}/boundaries/{boundary_id\}` */ - pageSize?: number; + name?: string; + } + export interface Params$Resource$Organizations$Boundaries$Get extends StandardParameters { /** - * Optional. A pagination token returned from a previous call to `SearchOrganizations` that indicates from where listing should continue. + * Required. The name of the Boundary to retrieve. Format: `organizations/{organization_id\}/boundaries/{boundary_id\}` or `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` */ - pageToken?: string; + name?: string; + } + export interface Params$Resource$Organizations$Boundaries$List extends StandardParameters { /** - * Optional. An optional query string used to filter the Organizations to return in the response. Query rules are case-insensitive. ``` | Field | Description | |------------------|--------------------------------------------| | directoryCustomerId, owner.directoryCustomerId | Filters by directory customer id. | | domain | Filters by domain. | ``` Organizations may be queried by `directoryCustomerId` or by `domain`, where the domain is a G Suite domain, for example: * Query `directorycustomerid:123456789` returns Organization resources with `owner.directory_customer_id` equal to `123456789`. * Query `domain:google.com` returns Organization resources corresponding to the domain `google.com`. + * Optional. The maximum number of Boundaries to return in the response. The service may return fewer Boundaries than requested. If unspecified, at most 100 Boundaries will be returned. The maximum value is 100; values above 100 will be coerced to 100. */ - query?: string; - } - export interface Params$Resource$Organizations$Setiampolicy extends StandardParameters { + pageSize?: number; /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * Optional. A pagination token received from a previous call to `ListBoundaries` that indicates from where listing should continue. Provide this to retrieve the subsequent page. */ - resource?: string; - + pageToken?: string; /** - * Request body metadata + * Required. The name of the parent resource whose Boundaries are being listed. Format: `organizations/{organization_id\}` or `folders/{folder_id\}` */ - requestBody?: Schema$SetIamPolicyRequest; + parent?: string; } - export interface Params$Resource$Organizations$Testiampermissions extends StandardParameters { + export interface Params$Resource$Organizations$Boundaries$Patch extends StandardParameters { /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * Identifier. The unique resource name of the Boundary. Format: - `organizations/{organization_id\}/boundaries/{boundary_id\}` - `folders/{folder_id\}/boundaries/{boundary_id\}` Example: `folders/123456789/boundaries/my-boundary` */ - resource?: string; + name?: string; + /** + * Optional. The list of fields to update. + */ + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$TestIamPermissionsRequest; + requestBody?: Schema$Boundary; } export class Resource$Organizations$Capabilityconfigs { diff --git a/src/apis/compute/alpha.ts b/src/apis/compute/alpha.ts index dc048cbe43..c792f0049b 100644 --- a/src/apis/compute/alpha.ts +++ b/src/apis/compute/alpha.ts @@ -571,6 +571,10 @@ export namespace compute_alpha { /** * Map of management interfaces. Keys must be valid RFC1035 names and at most * 63 characters long. + * For TYPE_NVLINK_SWITCH_MONITORING interfaces, keys must match the pattern + * "gnmi-nvswitch-[0-8]" (e.g., "gnmi-nvswitch-0" through "gnmi-nvswitch-8"). + * For TYPE_NVLINK_SWITCH_DEBUG interfaces, keys must match the pattern + * "gnoi-nvswitch-[0-8]" (e.g., "gnoi-nvswitch-0" through "gnoi-nvswitch-8"). */ managementInterfaces?: {[key: string]: Schema$ManagementInterface} | null; /** @@ -4440,6 +4444,9 @@ export namespace compute_alpha { * Advertisement(RA) packet (IPv6). Google Cloud immediately but * temporarily associates the forwarding rule IP address with that VM, and * both new and in-flight packets are quickly delivered to that VM. + * - HA_CONTROLLER: The Backend Service is managed by a High Availability + * Controller. Failover and leader election are exclusively managed by the + * HA Controller service. * * * @@ -5369,7 +5376,12 @@ export namespace compute_alpha { */ count?: string | null; /** - * A flexible specification of machine type of instances to create. + * A specification of alternative machine types to use when creating + * instances. A single bulkInsert request can create instances with multiple + * different machine types based on capacity and quota availability. This + * field is supported only for regional bulkInsert requests. For more + * information, see About + * instance flexibility for VMs created in bulk. */ instanceFlexibilityPolicy?: Schema$InstanceFlexibilityPolicy; /** @@ -5530,7 +5542,9 @@ export namespace compute_alpha { contentType?: string | null; /** * If set, this invalidation rule will only apply to requests with a Host - * header matching host. + * header matching host. This field also accepts wildcards (*) to replace the + * leftmost (or first) label of a hostname. For example, *.example.com will + * match www.example.com, but not sub1.dev.example.com. */ host?: string | null; /** @@ -15841,15 +15855,8 @@ export namespace compute_alpha { */ export interface Schema$InstanceFlexibilityPolicy { /** - * Specification of alternative, flexible instance subsets. - * One of them will be selected to create the instances - * based on various criteria, like: - * - ranks, - * - location policy, - * - current capacity, - * - available reservations (you can specify affinity in - * InstanceProperties), - * - SWAN/GOOSE limitations. + * Specifies named instance selections that define properties for instances + * created in bulk. * Key is an arbitrary, unique RFC1035 string that identifies the instance * selection. */ @@ -35150,7 +35157,10 @@ export namespace compute_alpha { */ shutdownTimeout?: Schema$Duration; /** - * Default is false and there will be 120 seconds between GCE ACPI G2 Soft + * Defines whether GCE ACPI G2 Soft + * Off signal should be skipped during shutdown operation of VM. + * + * Default is false, meaning there will be 120 seconds between GCE ACPI G2 Soft * Off and ACPI G3 Mechanical * Off for Standard VMs and 30 seconds for Spot VMs. */ @@ -43275,7 +43285,13 @@ export namespace compute_alpha { } | null; } export interface Schema$VpnTunnelCipherSuite { + /** + * Cipher algorithms for IKE phase 1. + */ phase1?: Schema$VpnTunnelPhase1Algorithms; + /** + * Cipher algorithms for IKE phase 2. + */ phase2?: Schema$VpnTunnelPhase2Algorithms; } /** @@ -43336,14 +43352,35 @@ export namespace compute_alpha { resourceManagerTags?: {[key: string]: string} | null; } export interface Schema$VpnTunnelPhase1Algorithms { + /** + * Diffie-Hellman groups for IKE phase 1. + */ dh?: string[] | null; + /** + * Encryption algorithms for IKE phase 1. + */ encryption?: string[] | null; + /** + * Integrity algorithms for IKE phase 1. + */ integrity?: string[] | null; + /** + * Pseudo-random functions (PRF) for IKE phase 1. + */ prf?: string[] | null; } export interface Schema$VpnTunnelPhase2Algorithms { + /** + * Encryption algorithms for IKE phase 2. + */ encryption?: string[] | null; + /** + * Integrity algorithms for IKE phase 2. + */ integrity?: string[] | null; + /** + * Perfect Forward Secrecy (PFS) groups for IKE phase 2. + */ pfs?: string[] | null; } export interface Schema$VpnTunnelPqc { diff --git a/src/apis/compute/beta.ts b/src/apis/compute/beta.ts index b32dec58f2..989ea7b26a 100644 --- a/src/apis/compute/beta.ts +++ b/src/apis/compute/beta.ts @@ -4080,6 +4080,9 @@ export namespace compute_beta { * Advertisement(RA) packet (IPv6). Google Cloud immediately but * temporarily associates the forwarding rule IP address with that VM, and * both new and in-flight packets are quickly delivered to that VM. + * - HA_CONTROLLER: The Backend Service is managed by a High Availability + * Controller. Failover and leader election are exclusively managed by the + * HA Controller service. * * * @@ -4964,7 +4967,12 @@ export namespace compute_beta { */ count?: string | null; /** - * A flexible specification of machine type of instances to create. + * A specification of alternative machine types to use when creating + * instances. A single bulkInsert request can create instances with multiple + * different machine types based on capacity and quota availability. This + * field is supported only for regional bulkInsert requests. For more + * information, see About + * instance flexibility for VMs created in bulk. */ instanceFlexibilityPolicy?: Schema$InstanceFlexibilityPolicy; /** @@ -5125,7 +5133,9 @@ export namespace compute_beta { contentType?: string | null; /** * If set, this invalidation rule will only apply to requests with a Host - * header matching host. + * header matching host. This field also accepts wildcards (*) to replace the + * leftmost (or first) label of a hostname. For example, *.example.com will + * match www.example.com, but not sub1.dev.example.com. */ host?: string | null; /** @@ -14364,15 +14374,8 @@ export namespace compute_beta { */ export interface Schema$InstanceFlexibilityPolicy { /** - * Specification of alternative, flexible instance subsets. - * One of them will be selected to create the instances - * based on various criteria, like: - * - ranks, - * - location policy, - * - current capacity, - * - available reservations (you can specify affinity in - * InstanceProperties), - * - SWAN/GOOSE limitations. + * Specifies named instance selections that define properties for instances + * created in bulk. * Key is an arbitrary, unique RFC1035 string that identifies the instance * selection. */ @@ -30600,6 +30603,14 @@ export namespace compute_beta { * IPv6 address of the interface inside Google Cloud Platform. */ ipv6NexthopAddress?: string | null; + /** + * The linked custom hardware resource. + * The URI of the custom hardware link attachment + * is where you will establish the BGP session from the Cloud Router. + * This link attachment must reside in the same subnetwork as the associated + * router interface. + */ + linkedCustomHardware?: string | null; /** * Output only. [Output Only] The resource that configures and manages this BGP peer. * @@ -31396,6 +31407,12 @@ export namespace compute_beta { * Output only. IPv6 address of the local BGP interface. */ ipv6NexthopAddress?: string | null; + /** + * Output only. The URI of the linked custom hardware resource, + * CustomHardwareLinkAttachment. This CustomHardwareLinkAttachment resource + * is the one that will establish the BGP session from the Cloud Router. + */ + linkedCustomHardware?: string | null; /** * Output only. URL of the VPN tunnel that this BGP peer controls. */ @@ -31781,7 +31798,10 @@ export namespace compute_beta { */ provisioningModel?: string | null; /** - * Default is false and there will be 120 seconds between GCE ACPI G2 Soft + * Defines whether GCE ACPI G2 Soft + * Off signal should be skipped during shutdown operation of VM. + * + * Default is false, meaning there will be 120 seconds between GCE ACPI G2 Soft * Off and ACPI G3 Mechanical * Off for Standard VMs and 30 seconds for Spot VMs. */ @@ -39383,7 +39403,13 @@ export namespace compute_beta { } | null; } export interface Schema$VpnTunnelCipherSuite { + /** + * Cipher algorithms for IKE phase 1. + */ phase1?: Schema$VpnTunnelPhase1Algorithms; + /** + * Cipher algorithms for IKE phase 2. + */ phase2?: Schema$VpnTunnelPhase2Algorithms; } /** @@ -39444,14 +39470,35 @@ export namespace compute_beta { resourceManagerTags?: {[key: string]: string} | null; } export interface Schema$VpnTunnelPhase1Algorithms { + /** + * Diffie-Hellman groups for IKE phase 1. + */ dh?: string[] | null; + /** + * Encryption algorithms for IKE phase 1. + */ encryption?: string[] | null; + /** + * Integrity algorithms for IKE phase 1. + */ integrity?: string[] | null; + /** + * Pseudo-random functions (PRF) for IKE phase 1. + */ prf?: string[] | null; } export interface Schema$VpnTunnelPhase2Algorithms { + /** + * Encryption algorithms for IKE phase 2. + */ encryption?: string[] | null; + /** + * Integrity algorithms for IKE phase 2. + */ integrity?: string[] | null; + /** + * Perfect Forward Secrecy (PFS) groups for IKE phase 2. + */ pfs?: string[] | null; } export interface Schema$VpnTunnelsScopedList { @@ -39846,6 +39893,7 @@ export namespace compute_beta { export interface Schema$WorkloadIdentityConfig { identity?: string | null; identityCertificateEnabled?: boolean | null; + identityType?: string | null; } export interface Schema$XpnHostList { /** diff --git a/src/apis/compute/preview.ts b/src/apis/compute/preview.ts index 48528db196..53d4555911 100644 --- a/src/apis/compute/preview.ts +++ b/src/apis/compute/preview.ts @@ -131,9 +131,12 @@ export namespace compute_preview { externalVpnGateways: Resource$Externalvpngateways; firewallPolicies: Resource$Firewallpolicies; firewalls: Resource$Firewalls; + folderGlobalVmExtensionPolicies: Resource$Folderglobalvmextensionpolicies; + folderZoneVmExtensionPolicies: Resource$Folderzonevmextensionpolicies; forwardingRules: Resource$Forwardingrules; futureReservations: Resource$Futurereservations; globalAddresses: Resource$Globaladdresses; + globalFolderOperations: Resource$Globalfolderoperations; globalForwardingRules: Resource$Globalforwardingrules; globalFrontendSettings: Resource$Globalfrontendsettings; globalNetworkEndpointGroups: Resource$Globalnetworkendpointgroups; @@ -177,7 +180,9 @@ export namespace compute_preview { nodeGroups: Resource$Nodegroups; nodeTemplates: Resource$Nodetemplates; nodeTypes: Resource$Nodetypes; + organizationGlobalVmExtensionPolicies: Resource$Organizationglobalvmextensionpolicies; organizationSecurityPolicies: Resource$Organizationsecuritypolicies; + organizationZoneVmExtensionPolicies: Resource$Organizationzonevmextensionpolicies; packetMirrorings: Resource$Packetmirrorings; previewFeatures: Resource$Previewfeatures; projects: Resource$Projects; @@ -248,7 +253,9 @@ export namespace compute_preview { vpnGateways: Resource$Vpngateways; vpnTunnels: Resource$Vpntunnels; wireGroups: Resource$Wiregroups; + zoneFolderOperations: Resource$Zonefolderoperations; zoneOperations: Resource$Zoneoperations; + zoneOrganizationOperations: Resource$Zoneorganizationoperations; zones: Resource$Zones; zoneVmExtensionPolicies: Resource$Zonevmextensionpolicies; @@ -278,9 +285,16 @@ export namespace compute_preview { this.externalVpnGateways = new Resource$Externalvpngateways(this.context); this.firewallPolicies = new Resource$Firewallpolicies(this.context); this.firewalls = new Resource$Firewalls(this.context); + this.folderGlobalVmExtensionPolicies = + new Resource$Folderglobalvmextensionpolicies(this.context); + this.folderZoneVmExtensionPolicies = + new Resource$Folderzonevmextensionpolicies(this.context); this.forwardingRules = new Resource$Forwardingrules(this.context); this.futureReservations = new Resource$Futurereservations(this.context); this.globalAddresses = new Resource$Globaladdresses(this.context); + this.globalFolderOperations = new Resource$Globalfolderoperations( + this.context + ); this.globalForwardingRules = new Resource$Globalforwardingrules( this.context ); @@ -349,8 +363,12 @@ export namespace compute_preview { this.nodeGroups = new Resource$Nodegroups(this.context); this.nodeTemplates = new Resource$Nodetemplates(this.context); this.nodeTypes = new Resource$Nodetypes(this.context); + this.organizationGlobalVmExtensionPolicies = + new Resource$Organizationglobalvmextensionpolicies(this.context); this.organizationSecurityPolicies = new Resource$Organizationsecuritypolicies(this.context); + this.organizationZoneVmExtensionPolicies = + new Resource$Organizationzonevmextensionpolicies(this.context); this.packetMirrorings = new Resource$Packetmirrorings(this.context); this.previewFeatures = new Resource$Previewfeatures(this.context); this.projects = new Resource$Projects(this.context); @@ -459,7 +477,13 @@ export namespace compute_preview { this.vpnGateways = new Resource$Vpngateways(this.context); this.vpnTunnels = new Resource$Vpntunnels(this.context); this.wireGroups = new Resource$Wiregroups(this.context); + this.zoneFolderOperations = new Resource$Zonefolderoperations( + this.context + ); this.zoneOperations = new Resource$Zoneoperations(this.context); + this.zoneOrganizationOperations = new Resource$Zoneorganizationoperations( + this.context + ); this.zones = new Resource$Zones(this.context); this.zoneVmExtensionPolicies = new Resource$Zonevmextensionpolicies( this.context @@ -4292,6 +4316,9 @@ export namespace compute_preview { * Advertisement(RA) packet (IPv6). Google Cloud immediately but * temporarily associates the forwarding rule IP address with that VM, and * both new and in-flight packets are quickly delivered to that VM. + * - HA_CONTROLLER: The Backend Service is managed by a High Availability + * Controller. Failover and leader election are exclusively managed by the + * HA Controller service. * * * @@ -5170,7 +5197,12 @@ export namespace compute_preview { */ count?: string | null; /** - * A flexible specification of machine type of instances to create. + * A specification of alternative machine types to use when creating + * instances. A single bulkInsert request can create instances with multiple + * different machine types based on capacity and quota availability. This + * field is supported only for regional bulkInsert requests. For more + * information, see About + * instance flexibility for VMs created in bulk. */ instanceFlexibilityPolicy?: Schema$InstanceFlexibilityPolicy; /** @@ -5316,7 +5348,9 @@ export namespace compute_preview { cacheTags?: string[] | null; /** * If set, this invalidation rule will only apply to requests with a Host - * header matching host. + * header matching host. This field also accepts wildcards (*) to replace the + * leftmost (or first) label of a hostname. For example, *.example.com will + * match www.example.com, but not sub1.dev.example.com. */ host?: string | null; path?: string | null; @@ -5632,6 +5666,11 @@ export namespace compute_preview { * Instance properties for this request. */ instanceProperties?: Schema$CapacityAdviceRequestInstanceProperties; + /** + * Optional. Input only. Client-provided UUID correlating multiple capacity advice requests + * belonging to a single logical client-side fanout session. + */ + sessionId?: string | null; /** * The number of VM instances to request. */ @@ -9024,6 +9063,46 @@ export namespace compute_preview { startTimeNotEarlierThan?: string | null; startTimeNotLaterThan?: string | null; } + export interface Schema$FolderVmExtensionPolicyAggregatedListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of VmExtensionPoliciesScopedList resources. + */ + items?: {[key: string]: Schema$VmExtensionPoliciesScopedList} | null; + /** + * Output only. [Output Only] Type of resource. Alwayscompute#FolderVmExtensionPolicyAggregatedList for lists of + * VmExtensionPolicies. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Represents a Forwarding Rule resource. * @@ -10379,6 +10458,54 @@ export namespace compute_preview { */ operation?: Schema$Operation; } + export interface Schema$GlobalListVmExtensionsResponse { + /** + * Output only. Fingerprint of this resource. A hash of the contents stored + * in this object. This field is used in optimistic locking. This field will + * be ignored when inserting a VmExtensionPolicy. An up-to-date + * fingerprint must be provided in order to update the VmExtensionPolicy. + * + * To see the latest value of the fingerprint, make a get() request to + * retrieve a VmExtensionPolicy. + */ + etag?: string | null; + /** + * Output only. Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * Output only. A list of VM extensions. + */ + items?: Schema$GlobalVmExtension[]; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * Output only. This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. Unreachable resources. + */ + unreachables?: string[] | null; + /** + * Output only. Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$GlobalNetworkEndpointGroupsAttachEndpointsRequest { /** * The list of network endpoints to be attached. @@ -10445,6 +10572,32 @@ export namespace compute_preview { */ policy?: Schema$Policy; } + export interface Schema$GlobalVmExtension { + /** + * Output only. [Output Only] Creation timestamp inRFC3339 + * text format. + */ + creationTimestamp?: string | null; + /** + * Output only. [Output Only] An optional textual description of the resource. + */ + description?: string | null; + /** + * Output only. [Output Only] The unique identifier for the resource. This identifier is + * defined by the server. + */ + id?: string | null; + /** + * Output only. [Output Only] Type of the resource. Alwayscompute#globalVmExtension. + */ + kind?: string | null; + name?: string | null; + /** + * Output only. [Output Only] Server-defined URL for the resource. + */ + selfLink?: string | null; + versions?: string[] | null; + } /** * Message describing GlobalVmExtensionPolicy object. */ @@ -14366,15 +14519,8 @@ export namespace compute_preview { */ export interface Schema$InstanceFlexibilityPolicy { /** - * Specification of alternative, flexible instance subsets. - * One of them will be selected to create the instances - * based on various criteria, like: - * - ranks, - * - location policy, - * - current capacity, - * - available reservations (you can specify affinity in - * InstanceProperties), - * - SWAN/GOOSE limitations. + * Specifies named instance selections that define properties for instances + * created in bulk. * Key is an arbitrary, unique RFC1035 string that identifies the instance * selection. */ @@ -19922,6 +20068,54 @@ export namespace compute_preview { message?: string; } | null; } + export interface Schema$ListVmExtensionsResponse { + /** + * Output only. Fingerprint of this resource. A hash of the contents stored + * in this object. This field is used in optimistic locking. This field will + * be ignored when inserting a VmExtensionPolicy. An up-to-date + * fingerprint must be provided in order to update the VmExtensionPolicy. + * + * To see the latest value of the fingerprint, make a get() request to + * retrieve a VmExtensionPolicy. + */ + etag?: string | null; + /** + * Output only. Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * Output only. A list of VM extensions. + */ + items?: Schema$VmExtension[]; + /** + * Output only. Type of resource. + */ + kind?: string | null; + /** + * Output only. This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. Unreachable resources. + */ + unreachables?: string[] | null; + /** + * Output only. Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$LocalDisk { /** * Specifies the number of such disks. @@ -22620,6 +22814,20 @@ export namespace compute_preview { */ name?: string | null; } + export interface Schema$NetworksUpdateNetworkProfileRequest { + /** + * If true, clear the network profile from the network. + */ + clearNetworkProfile?: boolean | null; + /** + * A full or partial URL of the new network profile to apply to this network. + * For example, the following are valid URLs: + * + * - https://www.googleapis.com/compute/{api_version\}/projects/{project_id\}/global/networkProfiles/{network_profile_name\} + * - projects/{project_id\}/global/networkProfiles/{network_profile_name\} + */ + networkProfile?: string | null; + } export interface Schema$NetworksUpdatePeeringRequest { networkPeering?: Schema$NetworkPeering; } @@ -23537,6 +23745,10 @@ export namespace compute_preview { * set when the operation is created. */ description?: string | null; + /** + * [Output Only] Extended details about the operation's execution. + */ + details?: Schema$OperationDetails; /** * [Output Only] The time that this operation was completed. This value is inRFC3339 * text format. @@ -23723,6 +23935,16 @@ export namespace compute_preview { message?: string; } | null; } + export interface Schema$OperationDetails { + /** + * Machine readable data from the message. + */ + data?: {[key: string]: any} | null; + /** + * Human or AI readable details on execution of the operation. + */ + message?: string | null; + } /** * Contains a list of Operation resources. */ @@ -23789,6 +24011,46 @@ export namespace compute_preview { */ kind?: string | null; } + export interface Schema$OrganizationVmExtensionPolicyAggregatedListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of VmExtensionPoliciesScopedList resources. + */ + items?: {[key: string]: Schema$VmExtensionPoliciesScopedList} | null; + /** + * Output only. [Output Only] Type of resource. Alwayscompute#OrganizationVmExtensionPolicyAggregatedList for lists + * of VmExtensionPolicies. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for + * the query parameter pageToken in the next list request. + * Subsequent list requests will have their own nextPageToken to + * continue paging through the results. + */ + nextPageToken?: string | null; + /** + * Output only. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * Settings controlling the eviction of unhealthy hosts from the load balancing * pool for the backend service. @@ -27352,6 +27614,12 @@ export namespace compute_preview { * The behavior of the fault experienced with the subBlock. */ behavior?: string | null; + /** + * The identifier of the specific faulty sub-component (e.g., NVSwitch ID). + * Optional. If not specified, all switches in the sub-block are targeted + * for triage. + */ + componentId?: string | null; /** * The description of the fault experienced with the subBlock. */ @@ -30386,7 +30654,10 @@ export namespace compute_preview { */ provisioningModel?: string | null; /** - * Default is false and there will be 120 seconds between GCE ACPI G2 Soft + * Defines whether GCE ACPI G2 Soft + * Off signal should be skipped during shutdown operation of VM. + * + * Default is false, meaning there will be 120 seconds between GCE ACPI G2 Soft * Off and ACPI G3 Mechanical * Off for Standard VMs and 30 seconds for Spot VMs. */ @@ -32744,6 +33015,16 @@ export namespace compute_preview { */ privateKey?: string | null; } + /** + * Response for `SslCertificatesService.FetchEncryptionKey` and + * `RegionSslCertificatesService.FetchEncryptionKey` methods. + */ + export interface Schema$SslCertificatesFetchEncryptionKeyResponse { + /** + * The Tink public keyset serialized in JSON format. + */ + publicKeyset?: string | null; + } export interface Schema$SslCertificatesScopedList { /** * List of SslCertificates contained in this scope. @@ -34924,6 +35205,11 @@ export namespace compute_preview { * the default network interface belongs to. */ network?: string | null; + /** + * Input only. [Input Only] Additional params passed with the request, but not persisted + * as part of resource payload. + */ + params?: Schema$TargetInstanceParams; /** * [Output Only] The resource URL for the security policy associated with this * target instance. @@ -35015,6 +35301,28 @@ export namespace compute_preview { message?: string; } | null; } + /** + * Additional target instance parameters. + */ + export interface Schema$TargetInstanceParams { + /** + * Tag keys/values directly bound to this resource. + * Tag keys and values have the same definition as resource + * manager tags. The field is allowed for INSERT + * only. The keys/values to set on the resource should be specified in + * either ID { : \} or Namespaced format + * { : \}. + * For example the following are valid inputs: + * * {"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"\} + * * {"123/environment" : "production", "345/abc" : "xyz"\} + * Note: + * * Invalid combinations of ID & namespaced format are not supported. For + * instance: {"123/environment" : "tagValues/444"\} is invalid. + * * Inconsistent format is not supported. For instance: + * {"tagKeys/333" : "tagValues/444", "123/env" : "prod"\} is invalid. + */ + resourceManagerTags?: {[key: string]: string} | null; + } export interface Schema$TargetInstancesScopedList { /** * A list of target instances contained in this scope. @@ -35116,6 +35424,11 @@ export namespace compute_preview { * cannot be a dash. */ name?: string | null; + /** + * Input only. [Input Only] Additional params passed with the request, but not persisted + * as part of resource payload. + */ + params?: Schema$TargetPoolParams; /** * Output only. [Output Only] URL of the region where the target pool resides. */ @@ -35227,6 +35540,28 @@ export namespace compute_preview { message?: string; } | null; } + /** + * Additional target pool parameters. + */ + export interface Schema$TargetPoolParams { + /** + * Tag keys/values directly bound to this resource. + * Tag keys and values have the same definition as resource + * manager tags. The field is allowed for INSERT + * only. The keys/values to set on the resource should be specified in + * either ID { : \} or Namespaced format + * { : \}. + * For example the following are valid inputs: + * * {"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"\} + * * {"123/environment" : "production", "345/abc" : "xyz"\} + * Note: + * * Invalid combinations of ID & namespaced format are not supported. For + * instance: {"123/environment" : "tagValues/444"\} is invalid. + * * Inconsistent format is not supported. For instance: + * {"tagKeys/333" : "tagValues/444", "123/env" : "prod"\} is invalid. + */ + resourceManagerTags?: {[key: string]: string} | null; + } export interface Schema$TargetPoolsAddHealthCheckRequest { /** * The HttpHealthCheck to add to the target pool. @@ -36697,6 +37032,19 @@ export namespace compute_preview { message?: string; } | null; } + /** + * A VM extension that can be installed on a VM. + */ + export interface Schema$VmExtension { + /** + * The name of the vm extension. + */ + name?: string | null; + /** + * The latest 10 versions of the vm extension. + */ + versions?: string[] | null; + } export interface Schema$VmExtensionPoliciesScopedList { /** * List of VmExtensionPolicy resources contained in this scope. @@ -37348,6 +37696,16 @@ export namespace compute_preview { * be set only for Classic VPN tunnels. */ peerIp?: string | null; + /** + * User specified list of PQC key exchange mechanisms (KEMs) to use for the + * phase 1 of the IKE protocol. + */ + pqcPhase1?: Schema$VpnTunnelPqc; + /** + * User specified list of PQC key exchange mechanisms (KEMs) to use for the + * phase 2 of the IKE protocol. + */ + pqcPhase2?: Schema$VpnTunnelPqc; /** * [Output Only] URL of the region where the VPN tunnel resides. * You must specify this field as part of the HTTP request URL. It is @@ -37434,6 +37792,18 @@ export namespace compute_preview { */ vpnGatewayInterface?: number | null; } + /** + * User specified list of PQC key exchanges. + */ + export interface Schema$VpnTunnelAdditionalKeyExchanges { + ke1s?: string[] | null; + ke2s?: string[] | null; + ke3s?: string[] | null; + ke4s?: string[] | null; + ke5s?: string[] | null; + ke6s?: string[] | null; + ke7s?: string[] | null; + } export interface Schema$VpnTunnelAggregatedList { /** * [Output Only] Unique identifier for the resource; defined by the server. @@ -37474,7 +37844,13 @@ export namespace compute_preview { } | null; } export interface Schema$VpnTunnelCipherSuite { + /** + * Cipher algorithms for IKE phase 1. + */ phase1?: Schema$VpnTunnelPhase1Algorithms; + /** + * Cipher algorithms for IKE phase 2. + */ phase2?: Schema$VpnTunnelPhase2Algorithms; } /** @@ -37535,16 +37911,41 @@ export namespace compute_preview { resourceManagerTags?: {[key: string]: string} | null; } export interface Schema$VpnTunnelPhase1Algorithms { + /** + * Diffie-Hellman groups for IKE phase 1. + */ dh?: string[] | null; + /** + * Encryption algorithms for IKE phase 1. + */ encryption?: string[] | null; + /** + * Integrity algorithms for IKE phase 1. + */ integrity?: string[] | null; + /** + * Pseudo-random functions (PRF) for IKE phase 1. + */ prf?: string[] | null; } export interface Schema$VpnTunnelPhase2Algorithms { + /** + * Encryption algorithms for IKE phase 2. + */ encryption?: string[] | null; + /** + * Integrity algorithms for IKE phase 2. + */ integrity?: string[] | null; + /** + * Perfect Forward Secrecy (PFS) groups for IKE phase 2. + */ pfs?: string[] | null; } + export interface Schema$VpnTunnelPqc { + keys?: Schema$VpnTunnelAdditionalKeyExchanges; + mode?: string | null; + } export interface Schema$VpnTunnelsScopedList { /** * A list of VPN tunnels contained in this scope. @@ -37912,6 +38313,7 @@ export namespace compute_preview { export interface Schema$WorkloadIdentityConfig { identity?: string | null; identityCertificateEnabled?: boolean | null; + identityType?: string | null; } export interface Schema$XpnHostList { /** @@ -38540,6 +38942,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -38895,6 +39298,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -40957,6 +41361,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -41337,6 +41742,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -41761,6 +42167,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -41956,6 +42363,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -42823,6 +43231,7 @@ export namespace compute_preview { * // "distributionPolicy": {}, * // "instanceFlexibilityPolicy": {}, * // "instanceProperties": {}, + * // "sessionId": "my_sessionId", * // "size": 0 * // } * }, @@ -43197,6 +43606,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -43551,6 +43961,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -44377,6 +44788,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -44740,6 +45152,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -45180,6 +45593,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -45545,6 +45959,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -46121,6 +46536,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -46552,6 +46968,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -46740,6 +47157,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -47254,6 +47672,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -47922,6 +48341,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -48115,6 +48535,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -48636,6 +49057,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -49403,6 +49825,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -49837,6 +50260,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -50025,6 +50449,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -50914,6 +51339,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -51622,6 +52048,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -51815,6 +52242,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -52168,6 +52596,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -52568,6 +52997,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -53382,6 +53812,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -53730,6 +54161,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -54166,6 +54598,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -54574,6 +55007,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -55012,6 +55446,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -55206,6 +55641,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -55446,6 +55882,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -55636,6 +56073,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -56226,6 +56664,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -56646,6 +57085,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -56843,6 +57283,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -57196,6 +57637,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -57390,6 +57832,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -57579,6 +58022,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -57775,6 +58219,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -58183,6 +58628,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -58377,6 +58823,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -60193,6 +60640,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -60549,6 +60997,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -60961,6 +61410,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -61510,6 +61960,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -61715,6 +62166,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -61898,6 +62350,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -62079,6 +62532,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -62900,6 +63354,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -63469,6 +63924,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -63674,6 +64130,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -63881,6 +64338,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -64064,6 +64522,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -64247,6 +64706,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -65187,6 +65647,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -65557,6 +66018,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -65996,6 +66458,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -66364,6 +66827,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -66723,16 +67187,17 @@ export namespace compute_preview { requestBody?: Schema$Firewall; } - export class Resource$Forwardingrules { + export class Resource$Folderglobalvmextensionpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of forwarding rules. + * Retrieves the list of all folder level VM Extension Policy resources + * available to the specified folder. * - * To prevent failure, it is recommended that you set the + * To prevent failure, it's recommended that you set the * `returnPartialSuccess` parameter to `true`. * @example * ```js @@ -66766,7 +67231,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.aggregatedList({ + * const res = await compute.folderGlobalVmExtensionPolicies.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -66826,6 +67291,8 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // Indicates whether every visible scope for each scope type (zone, region, * // global) should be included in the response. For new resource types added * // after this field, the flag has no effect as new resource types will always @@ -66856,9 +67323,6 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // The Shared VPC service project id or service project number for which * // aggregated list request is invoked for subnetworks list-usable api. * serviceProjectNumber: 'placeholder-value', @@ -66867,6 +67331,7 @@ export namespace compute_preview { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": {}, * // "kind": "my_kind", @@ -66890,56 +67355,61 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Forwardingrules$Aggregatedlist, + params: Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Forwardingrules$Aggregatedlist, + params?: Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; aggregatedList( - params: Params$Resource$Forwardingrules$Aggregatedlist, + params: Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Forwardingrules$Aggregatedlist, + params: Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Forwardingrules$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Forwardingrules$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Aggregatedlist; + {}) as Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Aggregatedlist; + params = + {} as Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist; options = {}; } @@ -66953,8 +67423,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/forwardingRules' + rootUrl + '/compute/v1/{+folder}/aggregated/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -66962,24 +67431,29 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['folder'], + pathParams: ['folder'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes the specified ForwardingRule resource. + * Purge scoped resources (zonal policies) from a folder level global + * VM extension policy, and then delete the global VM extension policy. Purge + * of the scoped resources is a pre-condition of the global VM extension + * policy deletion. The deletion of the global VM extension policy happens + * after the purge rollout is done, so it's not a part of the LRO. It's an + * automatic process that triggers in the backend. * @example * ```js * // Before running the sample: @@ -67011,14 +67485,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.delete({ - * // Name of the ForwardingRule resource to delete. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.folderGlobalVmExtensionPolicies.delete({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the global VM extension policy to purge scoped resources for. + * globalVmExtensionPolicy: 'placeholder-value', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -67033,6 +67504,17 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "conflictBehavior": "my_conflictBehavior", + * // "name": "my_name", + * // "predefinedRolloutPlan": "my_predefinedRolloutPlan", + * // "retryUuid": "my_retryUuid" + * // } + * }, * }); * console.log(res.data); * @@ -67041,6 +67523,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -67083,31 +67566,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Forwardingrules$Delete, + params: Params$Resource$Folderglobalvmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Forwardingrules$Delete, + params?: Params$Resource$Folderglobalvmextensionpolicies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Forwardingrules$Delete, + params: Params$Resource$Folderglobalvmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Forwardingrules$Delete, + params: Params$Resource$Folderglobalvmextensionpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Forwardingrules$Delete, + params: Params$Resource$Folderglobalvmextensionpolicies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Forwardingrules$Delete + | Params$Resource$Folderglobalvmextensionpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -67122,12 +67605,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Delete; + {}) as Params$Resource$Folderglobalvmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Delete; + params = {} as Params$Resource$Folderglobalvmextensionpolicies$Delete; options = {}; } @@ -67142,16 +67625,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' + '/compute/v1/{+folder}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'forwardingRule'], - pathParams: ['forwardingRule', 'project', 'region'], + requiredParams: ['folder', 'globalVmExtensionPolicy'], + pathParams: ['folder', 'globalVmExtensionPolicy'], context: this.context, }; if (callback) { @@ -67165,7 +67648,7 @@ export namespace compute_preview { } /** - * Returns the specified ForwardingRule resource. + * Gets details of a folder level GlobalVmExtensionPolicy. * @example * ```js * // Before running the sample: @@ -67198,60 +67681,30 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.get({ - * // Name of the ForwardingRule resource to return. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * view: 'placeholder-value', + * const res = await compute.folderGlobalVmExtensionPolicies.get({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the GlobalVmExtensionPolicy resource to return. + * globalVmExtensionPolicy: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "IPAddress": "my_IPAddress", - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", + * // "extensionPolicies": {}, * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -67268,52 +67721,53 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Forwardingrules$Get, + params: Params$Resource$Folderglobalvmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Forwardingrules$Get, + params?: Params$Resource$Folderglobalvmextensionpolicies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Forwardingrules$Get, + params: Params$Resource$Folderglobalvmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Forwardingrules$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Folderglobalvmextensionpolicies$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Forwardingrules$Get, - callback: BodyResponseCallback + params: Params$Resource$Folderglobalvmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Forwardingrules$Get - | BodyResponseCallback + | Params$Resource$Folderglobalvmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Get; + {}) as Params$Resource$Folderglobalvmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Get; + params = {} as Params$Resource$Folderglobalvmextensionpolicies$Get; options = {}; } @@ -67328,7 +67782,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' + '/compute/v1/{+folder}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -67336,23 +67790,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'forwardingRule'], - pathParams: ['forwardingRule', 'project', 'region'], + requiredParams: ['folder', 'globalVmExtensionPolicy'], + pathParams: ['folder', 'globalVmExtensionPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a ForwardingRule resource in the specified project and region using - * the data included in the request. + * Retrieves details of a specific VM extension. * @example * ```js * // Before running the sample: @@ -67376,6 +67829,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -67384,12 +67838,160 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.folderGlobalVmExtensionPolicies.getVmExtension({ + * // Required. Name of the VM extension for this request. + * extensionName: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "versions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getVmExtension( + params: Params$Resource$Folderglobalvmextensionpolicies$Getvmextension, + options: StreamMethodOptions + ): Promise>; + getVmExtension( + params?: Params$Resource$Folderglobalvmextensionpolicies$Getvmextension, + options?: MethodOptions + ): Promise>; + getVmExtension( + params: Params$Resource$Folderglobalvmextensionpolicies$Getvmextension, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVmExtension( + params: Params$Resource$Folderglobalvmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVmExtension( + params: Params$Resource$Folderglobalvmextensionpolicies$Getvmextension, + callback: BodyResponseCallback + ): void; + getVmExtension( + callback: BodyResponseCallback + ): void; + getVmExtension( + paramsOrCallback?: + | Params$Resource$Folderglobalvmextensionpolicies$Getvmextension + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Folderglobalvmextensionpolicies$Getvmextension; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Folderglobalvmextensionpolicies$Getvmextension; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/{+folder}/global/vmExtensions/{extensionName}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['folder', 'extensionName'], + pathParams: ['extensionName', 'folder'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new folder level GlobalVmExtensionPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.folderGlobalVmExtensionPolicies.insert({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -67409,45 +68011,19 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "IPAddress": "my_IPAddress", - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", + * // "extensionPolicies": {}, * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -67458,6 +68034,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -67500,31 +68077,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Forwardingrules$Insert, + params: Params$Resource$Folderglobalvmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Forwardingrules$Insert, + params?: Params$Resource$Folderglobalvmextensionpolicies$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Forwardingrules$Insert, + params: Params$Resource$Folderglobalvmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Forwardingrules$Insert, + params: Params$Resource$Folderglobalvmextensionpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Forwardingrules$Insert, + params: Params$Resource$Folderglobalvmextensionpolicies$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Forwardingrules$Insert + | Params$Resource$Folderglobalvmextensionpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -67539,12 +68116,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Insert; + {}) as Params$Resource$Folderglobalvmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Insert; + params = {} as Params$Resource$Folderglobalvmextensionpolicies$Insert; options = {}; } @@ -67558,8 +68135,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/forwardingRules' + rootUrl + '/compute/v1/{+folder}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -67567,8 +68143,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['folder'], + pathParams: ['folder'], context: this.context, }; if (callback) { @@ -67582,8 +68158,7 @@ export namespace compute_preview { } /** - * Retrieves a list of ForwardingRule resources available to the specified - * project and region. + * Lists folder level GlobalVmExtensionPolicies. * @example * ```js * // Before running the sample: @@ -67616,7 +68191,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.list({ + * const res = await compute.folderGlobalVmExtensionPolicies.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -67676,6 +68251,8 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -67698,21 +68275,18 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -67730,52 +68304,56 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Forwardingrules$List, + params: Params$Resource$Folderglobalvmextensionpolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Forwardingrules$List, + params?: Params$Resource$Folderglobalvmextensionpolicies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Forwardingrules$List, + params: Params$Resource$Folderglobalvmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Forwardingrules$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Folderglobalvmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Forwardingrules$List, - callback: BodyResponseCallback + params: Params$Resource$Folderglobalvmextensionpolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Forwardingrules$List - | BodyResponseCallback + | Params$Resource$Folderglobalvmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$List; + {}) as Params$Resource$Folderglobalvmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$List; + params = {} as Params$Resource$Folderglobalvmextensionpolicies$List; options = {}; } @@ -67789,8 +68367,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/forwardingRules' + rootUrl + '/compute/v1/{+folder}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -67798,26 +68375,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['folder'], + pathParams: ['folder'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified forwarding rule with the data included in the - * request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. Currently, you can only - * patch the network_tier field. + * Lists all VM extensions within a folder. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -67841,6 +68415,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -67849,305 +68424,103 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.patch({ - * // Name of the ForwardingRule resource to patch. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.folderGlobalVmExtensionPolicies.listVmExtensions({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "IPAddress": "my_IPAddress", - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], - * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - patch( - params: Params$Resource$Forwardingrules$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Forwardingrules$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Forwardingrules$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Forwardingrules$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Forwardingrules$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Forwardingrules$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'region', 'forwardingRule'], - pathParams: ['forwardingRule', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Sets the labels on the specified resource. To learn more about labels, - * read the - * Labeling Resources documentation. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.forwardingRules.setLabels({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Required. Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -68163,52 +68536,58 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Forwardingrules$Setlabels, + listVmExtensions( + params: Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Forwardingrules$Setlabels, + listVmExtensions( + params?: Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Forwardingrules$Setlabels, + ): Promise>; + listVmExtensions( + params: Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Forwardingrules$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Forwardingrules$Setlabels, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + listVmExtensions( + callback: BodyResponseCallback + ): void; + listVmExtensions( paramsOrCallback?: - | Params$Resource$Forwardingrules$Setlabels - | BodyResponseCallback + | Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Setlabels; + {}) as Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Setlabels; + params = + {} as Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions; options = {}; } @@ -68222,32 +68601,32 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels' + rootUrl + '/compute/v1/{+folder}/global/vmExtensions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['folder'], + pathParams: ['folder'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Changes target URL for forwarding rule. The new target should be of the - * same type as the old target. + * Updates a folder level GlobalVmExtensionPolicy. * @example * ```js * // Before running the sample: @@ -68279,14 +68658,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.setTarget({ - * // Name of the ForwardingRule resource in which target is to be set. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.folderGlobalVmExtensionPolicies.update({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the global VM extension policy to update. + * globalVmExtensionPolicy: 'placeholder-value', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -68306,7 +68682,19 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "target": "my_target" + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "name": "my_name", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -68317,6 +68705,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -68358,32 +68747,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTarget( - params: Params$Resource$Forwardingrules$Settarget, + update( + params: Params$Resource$Folderglobalvmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; - setTarget( - params?: Params$Resource$Forwardingrules$Settarget, + update( + params?: Params$Resource$Folderglobalvmextensionpolicies$Update, options?: MethodOptions ): Promise>; - setTarget( - params: Params$Resource$Forwardingrules$Settarget, + update( + params: Params$Resource$Folderglobalvmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTarget( - params: Params$Resource$Forwardingrules$Settarget, + update( + params: Params$Resource$Folderglobalvmextensionpolicies$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTarget( - params: Params$Resource$Forwardingrules$Settarget, + update( + params: Params$Resource$Folderglobalvmextensionpolicies$Update, callback: BodyResponseCallback ): void; - setTarget(callback: BodyResponseCallback): void; - setTarget( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Forwardingrules$Settarget + | Params$Resource$Folderglobalvmextensionpolicies$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -68398,12 +68787,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Settarget; + {}) as Params$Resource$Folderglobalvmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Settarget; + params = {} as Params$Resource$Folderglobalvmextensionpolicies$Update; options = {}; } @@ -68418,16 +68807,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget' + '/compute/v1/{+folder}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'forwardingRule'], - pathParams: ['forwardingRule', 'project', 'region'], + requiredParams: ['folder', 'globalVmExtensionPolicy'], + pathParams: ['folder', 'globalVmExtensionPolicy'], context: this.context, }; if (callback) { @@ -68441,7 +68830,7 @@ export namespace compute_preview { } } - export interface Params$Resource$Forwardingrules$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Folderglobalvmextensionpolicies$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -68503,6 +68892,10 @@ export namespace compute_preview { * expressions. */ filter?: string; + /** + * Folder ID for this request. + */ + folder?: string; /** * Indicates whether every visible scope for each scope type (zone, region, * global) should be included in the response. For new resource types added @@ -68541,29 +68934,21 @@ export namespace compute_preview { * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; /** * The Shared VPC service project id or service project number for which * aggregated list request is invoked for subnetworks list-usable api. */ serviceProjectNumber?: string; } - export interface Params$Resource$Forwardingrules$Delete extends StandardParameters { + export interface Params$Resource$Folderglobalvmextensionpolicies$Delete extends StandardParameters { /** - * Name of the ForwardingRule resource to delete. - */ - forwardingRule?: string; - /** - * Project ID for this request. + * Folder ID for this request. */ - project?: string; + folder?: string; /** - * Name of the region scoping this request. + * Name of the global VM extension policy to purge scoped resources for. */ - region?: string; + globalVmExtensionPolicy?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -68580,34 +68965,37 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - } - export interface Params$Resource$Forwardingrules$Get extends StandardParameters { + /** - * Name of the ForwardingRule resource to return. + * Request body metadata */ - forwardingRule?: string; + requestBody?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput; + } + export interface Params$Resource$Folderglobalvmextensionpolicies$Get extends StandardParameters { /** - * Project ID for this request. + * Folder ID for this request. */ - project?: string; + folder?: string; /** - * Name of the region scoping this request. + * Name of the GlobalVmExtensionPolicy resource to return. */ - region?: string; + globalVmExtensionPolicy?: string; + } + export interface Params$Resource$Folderglobalvmextensionpolicies$Getvmextension extends StandardParameters { /** - * + * Required. Name of the VM extension for this request. */ - view?: string; - } - export interface Params$Resource$Forwardingrules$Insert extends StandardParameters { + extensionName?: string; /** - * Project ID for this request. + * Folder ID for this request. */ - project?: string; + folder?: string; + } + export interface Params$Resource$Folderglobalvmextensionpolicies$Insert extends StandardParameters { /** - * Name of the region scoping this request. + * Folder ID for this request. */ - region?: string; + folder?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -68628,9 +69016,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$ForwardingRule; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export interface Params$Resource$Forwardingrules$List extends StandardParameters { + export interface Params$Resource$Folderglobalvmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -68692,6 +69080,10 @@ export namespace compute_preview { * expressions. */ filter?: string; + /** + * Folder ID for this request. + */ + folder?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -68720,98 +69112,111 @@ export namespace compute_preview { * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; } - export interface Params$Resource$Forwardingrules$Patch extends StandardParameters { - /** - * Name of the ForwardingRule resource to patch. - */ - forwardingRule?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Folderglobalvmextensionpolicies$Listvmextensions extends StandardParameters { /** - * Name of the region scoping this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - requestBody?: Schema$ForwardingRule; - } - export interface Params$Resource$Forwardingrules$Setlabels extends StandardParameters { + filter?: string; /** - * Project ID for this request. + * Required. Folder ID for this request. */ - project?: string; + folder?: string; /** - * The region for this request. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - region?: string; + maxResults?: number; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * Name or id of the resource for this request. + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - resource?: string; - + orderBy?: string; /** - * Request body metadata + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - requestBody?: Schema$RegionSetLabelsRequest; + pageToken?: string; } - export interface Params$Resource$Forwardingrules$Settarget extends StandardParameters { - /** - * Name of the ForwardingRule resource in which target is to be set. - */ - forwardingRule?: string; + export interface Params$Resource$Folderglobalvmextensionpolicies$Update extends StandardParameters { /** - * Project ID for this request. + * Folder ID for this request. */ - project?: string; + folder?: string; /** - * Name of the region scoping this request. + * Name of the global VM extension policy to update. */ - region?: string; + globalVmExtensionPolicy?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -68832,20 +69237,17 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$TargetReference; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export class Resource$Futurereservations { + export class Resource$Folderzonevmextensionpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of future reservations. - * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Deletes a specified zone VM extension policy within a folder. * @example * ```js * // Before running the sample: @@ -68869,7 +69271,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -68878,116 +69279,63 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. + * const res = await compute.folderZoneVmExtensionPolicies.delete({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate commitments. * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Name of the zone VM extension policy to delete. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } * } * * main().catch(e => { @@ -69002,61 +69350,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Futurereservations$Aggregatedlist, + delete( + params: Params$Resource$Folderzonevmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Futurereservations$Aggregatedlist, + delete( + params?: Params$Resource$Folderzonevmextensionpolicies$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Futurereservations$Aggregatedlist, + ): Promise>; + delete( + params: Params$Resource$Folderzonevmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Futurereservations$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Futurereservations$Aggregatedlist, - callback: BodyResponseCallback + delete( + params: Params$Resource$Folderzonevmextensionpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + delete( + params: Params$Resource$Folderzonevmextensionpolicies$Delete, + callback: BodyResponseCallback ): void; - aggregatedList( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Futurereservations$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Aggregatedlist; + {}) as Params$Resource$Folderzonevmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Aggregatedlist; + params = {} as Params$Resource$Folderzonevmextensionpolicies$Delete; options = {}; } @@ -69071,32 +69410,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/aggregated/futureReservations' + '/compute/v1/{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['folder', 'zone', 'vmExtensionPolicy'], + pathParams: ['folder', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Cancel the specified future reservation. + * Retrieves details of a specific zone VM extension policy within a folder. * @example * ```js * // Before running the sample: @@ -69120,6 +69457,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -69128,62 +69466,32 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.cancel({ - * // Name of the future reservation to retrieve. Name should conform to RFC1035. - * futureReservation: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', + * const res = await compute.folderZoneVmExtensionPolicies.get({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the VM extension policy resource to return. + * vmExtensionPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "instanceSelectors": [], * // "kind": "my_kind", + * // "managedByGlobal": false, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "priority": 0, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -69199,52 +69507,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - cancel( - params: Params$Resource$Futurereservations$Cancel, + get( + params: Params$Resource$Folderzonevmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Futurereservations$Cancel, + get( + params?: Params$Resource$Folderzonevmextensionpolicies$Get, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Futurereservations$Cancel, + ): Promise>; + get( + params: Params$Resource$Folderzonevmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Futurereservations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Folderzonevmextensionpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Futurereservations$Cancel, - callback: BodyResponseCallback + get( + params: Params$Resource$Folderzonevmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Futurereservations$Cancel - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Cancel; + {}) as Params$Resource$Folderzonevmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Cancel; + params = {} as Params$Resource$Folderzonevmextensionpolicies$Get; options = {}; } @@ -69259,30 +69568,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/futureReservations/{futureReservation}/cancel' + '/compute/v1/{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'futureReservation'], - pathParams: ['futureReservation', 'project', 'zone'], + requiredParams: ['folder', 'zone', 'vmExtensionPolicy'], + pathParams: ['folder', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified future reservation. + * Retrieves details of a specific VM extension within a folder. * @example * ```js * // Before running the sample: @@ -69306,6 +69615,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -69314,62 +69624,20 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.delete({ - * // Name of the future reservation to retrieve. Name should conform to RFC1035. - * futureReservation: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', + * const res = await compute.folderZoneVmExtensionPolicies.getVmExtension({ + * // Required. Name of the VM extension for this request. + * extensionName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "versions": [] * // } * } * @@ -69385,52 +69653,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Futurereservations$Delete, + getVmExtension( + params: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Futurereservations$Delete, + getVmExtension( + params?: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Futurereservations$Delete, + ): Promise>; + getVmExtension( + params: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Futurereservations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Futurereservations$Delete, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + getVmExtension(callback: BodyResponseCallback): void; + getVmExtension( paramsOrCallback?: - | Params$Resource$Futurereservations$Delete - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Getvmextension + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Delete; + {}) as Params$Resource$Folderzonevmextensionpolicies$Getvmextension; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Delete; + params = + {} as Params$Resource$Folderzonevmextensionpolicies$Getvmextension; options = {}; } @@ -69445,30 +69715,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' + '/compute/v1/{+folder}/zones/{zone}/vmExtensions/{extensionName}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'futureReservation'], - pathParams: ['futureReservation', 'project', 'zone'], + requiredParams: ['folder', 'zone', 'extensionName'], + pathParams: ['extensionName', 'folder', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves information about the specified future reservation. + * Creates a new zone-level VM extension policy within a folder. * @example * ```js * // Before running the sample: @@ -69492,7 +69762,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -69501,49 +69770,80 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.get({ - * // Name of the future reservation to retrieve. Name should conform to RFC1035. - * futureReservation: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', + * const res = await compute.folderZoneVmExtensionPolicies.insert({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "aggregateReservation": {}, - * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", - * // "autoCreatedReservationsDuration": {}, - * // "autoDeleteAutoCreatedReservations": false, - * // "colocationResource": "my_colocationResource", - * // "commitmentInfo": {}, - * // "confidentialComputeType": "my_confidentialComputeType", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deploymentType": "my_deploymentType", * // "description": "my_description", - * // "enableEmergentMaintenance": false, + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "namePrefix": "my_namePrefix", - * // "params": {}, - * // "planningStatus": "my_planningStatus", - * // "reservationMode": "my_reservationMode", - * // "reservationName": "my_reservationName", - * // "resourceMetadata": {}, - * // "resourceName": "my_resourceName", - * // "schedulingType": "my_schedulingType", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "specificReservationRequired": false, - * // "specificSkuProperties": {}, - * // "status": {}, - * // "storagePoolProperties": {}, - * // "timeWindow": {}, + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -69560,53 +69860,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Futurereservations$Get, + insert( + params: Params$Resource$Folderzonevmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Futurereservations$Get, + insert( + params?: Params$Resource$Folderzonevmextensionpolicies$Insert, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Futurereservations$Get, + ): Promise>; + insert( + params: Params$Resource$Folderzonevmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Futurereservations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Folderzonevmextensionpolicies$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Futurereservations$Get, - callback: BodyResponseCallback + insert( + params: Params$Resource$Folderzonevmextensionpolicies$Insert, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Futurereservations$Get - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Get; + {}) as Params$Resource$Folderzonevmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Get; + params = {} as Params$Resource$Folderzonevmextensionpolicies$Insert; options = {}; } @@ -69620,31 +69919,30 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' + rootUrl + '/compute/v1/{+folder}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'futureReservation'], - pathParams: ['futureReservation', 'project', 'zone'], + requiredParams: ['folder', 'zone'], + pathParams: ['folder', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new Future Reservation. + * Lists all VM extension policies within a specific zone for a folder. * @example * ```js * // Before running the sample: @@ -69668,6 +69966,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -69676,98 +69975,105 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.folderZoneVmExtensionPolicies.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "aggregateReservation": {}, - * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", - * // "autoCreatedReservationsDuration": {}, - * // "autoDeleteAutoCreatedReservations": false, - * // "colocationResource": "my_colocationResource", - * // "commitmentInfo": {}, - * // "confidentialComputeType": "my_confidentialComputeType", - * // "creationTimestamp": "my_creationTimestamp", - * // "deploymentType": "my_deploymentType", - * // "description": "my_description", - * // "enableEmergentMaintenance": false, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "namePrefix": "my_namePrefix", - * // "params": {}, - * // "planningStatus": "my_planningStatus", - * // "reservationMode": "my_reservationMode", - * // "reservationName": "my_reservationName", - * // "resourceMetadata": {}, - * // "resourceName": "my_resourceName", - * // "schedulingType": "my_schedulingType", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "specificReservationRequired": false, - * // "specificSkuProperties": {}, - * // "status": {}, - * // "storagePoolProperties": {}, - * // "timeWindow": {}, - * // "zone": "my_zone" - * // } - * }, + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -69783,52 +70089,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Futurereservations$Insert, + list( + params: Params$Resource$Folderzonevmextensionpolicies$List, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Futurereservations$Insert, + list( + params?: Params$Resource$Folderzonevmextensionpolicies$List, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Futurereservations$Insert, + ): Promise>; + list( + params: Params$Resource$Folderzonevmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Futurereservations$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Folderzonevmextensionpolicies$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Futurereservations$Insert, - callback: BodyResponseCallback + list( + params: Params$Resource$Folderzonevmextensionpolicies$List, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Futurereservations$Insert - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Insert; + {}) as Params$Resource$Folderzonevmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Insert; + params = {} as Params$Resource$Folderzonevmextensionpolicies$List; options = {}; } @@ -69842,32 +70150,31 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/futureReservations' + rootUrl + '/compute/v1/{+folder}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['folder', 'zone'], + pathParams: ['folder', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * A list of all the future reservations that have been configured for the - * specified project in specified zone. + * Lists all VM extensions within a specific zone for a folder. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -69900,7 +70207,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.list({ + * const res = await compute.folderZoneVmExtensionPolicies.listVmExtensions({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -69960,6 +70267,8 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -69982,11 +70291,8 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -70015,57 +70321,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Futurereservations$List, + listVmExtensions( + params: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Futurereservations$List, + listVmExtensions( + params?: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Futurereservations$List, + ): Promise>; + listVmExtensions( + params: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Futurereservations$List, + listVmExtensions( + params: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Futurereservations$List, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + listVmExtensions( + callback: BodyResponseCallback ): void; - list( + listVmExtensions( paramsOrCallback?: - | Params$Resource$Futurereservations$List - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Listvmextensions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$List; + {}) as Params$Resource$Folderzonevmextensionpolicies$Listvmextensions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$List; + params = + {} as Params$Resource$Folderzonevmextensionpolicies$Listvmextensions; options = {}; } @@ -70079,8 +70385,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/futureReservations' + rootUrl + '/compute/v1/{+folder}/zones/{zone}/vmExtensions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -70088,24 +70393,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['folder', 'zone'], + pathParams: ['folder', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the specified future reservation. + * Modifies an existing zone VM extension policy within a folder. * @example * ```js * // Before running the sample: @@ -70137,12 +70440,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.update({ - * // Name of the reservation to update. Name should conform to RFC1035. - * futureReservation: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * const res = await compute.folderZoneVmExtensionPolicies.update({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -70157,46 +70457,29 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', + * // Name of the zone VM extension policy to update. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "aggregateReservation": {}, - * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", - * // "autoCreatedReservationsDuration": {}, - * // "autoDeleteAutoCreatedReservations": false, - * // "colocationResource": "my_colocationResource", - * // "commitmentInfo": {}, - * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", - * // "deploymentType": "my_deploymentType", * // "description": "my_description", - * // "enableEmergentMaintenance": false, + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", + * // "managedByGlobal": false, * // "name": "my_name", - * // "namePrefix": "my_namePrefix", - * // "params": {}, - * // "planningStatus": "my_planningStatus", - * // "reservationMode": "my_reservationMode", - * // "reservationName": "my_reservationName", - * // "resourceMetadata": {}, - * // "resourceName": "my_resourceName", - * // "schedulingType": "my_schedulingType", + * // "priority": 0, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "specificReservationRequired": false, - * // "specificSkuProperties": {}, - * // "status": {}, - * // "storagePoolProperties": {}, - * // "timeWindow": {}, - * // "zone": "my_zone" + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -70207,6 +70490,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -70249,31 +70533,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ update( - params: Params$Resource$Futurereservations$Update, + params: Params$Resource$Folderzonevmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; update( - params?: Params$Resource$Futurereservations$Update, + params?: Params$Resource$Folderzonevmextensionpolicies$Update, options?: MethodOptions ): Promise>; update( - params: Params$Resource$Futurereservations$Update, + params: Params$Resource$Folderzonevmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Futurereservations$Update, + params: Params$Resource$Folderzonevmextensionpolicies$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Futurereservations$Update, + params: Params$Resource$Folderzonevmextensionpolicies$Update, callback: BodyResponseCallback ): void; update(callback: BodyResponseCallback): void; update( paramsOrCallback?: - | Params$Resource$Futurereservations$Update + | Params$Resource$Folderzonevmextensionpolicies$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -70288,12 +70572,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Update; + {}) as Params$Resource$Folderzonevmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Update; + params = {} as Params$Resource$Folderzonevmextensionpolicies$Update; options = {}; } @@ -70308,7 +70592,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' + '/compute/v1/{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '2026-10-01-preview', @@ -70316,8 +70600,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'futureReservation'], - pathParams: ['futureReservation', 'project', 'zone'], + requiredParams: ['folder', 'zone', 'vmExtensionPolicy'], + pathParams: ['folder', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { @@ -70331,7 +70615,96 @@ export namespace compute_preview { } } - export interface Params$Resource$Futurereservations$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Folderzonevmextensionpolicies$Delete extends StandardParameters { + /** + * Folder ID for this request. + */ + folder?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name of the zone VM extension policy to delete. + */ + vmExtensionPolicy?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Folderzonevmextensionpolicies$Get extends StandardParameters { + /** + * Folder ID for this request. + */ + folder?: string; + /** + * Name of the VM extension policy resource to return. + */ + vmExtensionPolicy?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Folderzonevmextensionpolicies$Getvmextension extends StandardParameters { + /** + * Required. Name of the VM extension for this request. + */ + extensionName?: string; + /** + * Folder ID for this request. + */ + folder?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Folderzonevmextensionpolicies$Insert extends StandardParameters { + /** + * Folder ID for this request. + */ + folder?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$VmExtensionPolicy; + } + export interface Params$Resource$Folderzonevmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -70394,15 +70767,9 @@ export namespace compute_preview { */ filter?: string; /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. + * Folder ID for this request. */ - includeAllScopes?: boolean; + folder?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -70432,121 +70799,11 @@ export namespace compute_preview { */ pageToken?: string; /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Futurereservations$Cancel extends StandardParameters { - /** - * Name of the future reservation to retrieve. Name should conform to RFC1035. - */ - futureReservation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Futurereservations$Delete extends StandardParameters { - /** - * Name of the future reservation to retrieve. Name should conform to RFC1035. - */ - futureReservation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Futurereservations$Get extends StandardParameters { - /** - * Name of the future reservation to retrieve. Name should conform to RFC1035. - */ - futureReservation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Futurereservations$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. + * Name of the zone for this request. */ zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$FutureReservation; } - export interface Params$Resource$Futurereservations$List extends StandardParameters { + export interface Params$Resource$Folderzonevmextensionpolicies$Listvmextensions extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -70608,6 +70865,10 @@ export namespace compute_preview { * expressions. */ filter?: string; + /** + * Folder ID for this request. + */ + folder?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -70637,23 +70898,15 @@ export namespace compute_preview { */ pageToken?: string; /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. + * Name of the zone for this request. */ zone?: string; } - export interface Params$Resource$Futurereservations$Update extends StandardParameters { - /** - * Name of the reservation to update. Name should conform to RFC1035. - */ - futureReservation?: string; + export interface Params$Resource$Folderzonevmextensionpolicies$Update extends StandardParameters { /** - * Project ID for this request. + * Folder ID for this request. */ - project?: string; + folder?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -70671,28 +70924,31 @@ export namespace compute_preview { */ requestId?: string; /** - * update_mask indicates fields to be updated as part of this request. + * Name of the zone VM extension policy to update. */ - updateMask?: string; + vmExtensionPolicy?: string; /** - * Name of the zone for this request. Name should conform to RFC1035. + * Name of the zone for this request. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$FutureReservation; + requestBody?: Schema$VmExtensionPolicy; } - export class Resource$Globaladdresses { + export class Resource$Forwardingrules { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified address resource. + * Retrieves an aggregated list of forwarding rules. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -70716,6 +70972,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -70724,62 +70981,310 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.delete({ - * // Name of the address resource to delete. - * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.forwardingRules.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + aggregatedList( + params: Params$Resource$Forwardingrules$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Forwardingrules$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Forwardingrules$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Forwardingrules$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Forwardingrules$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Forwardingrules$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Forwardingrules$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Forwardingrules$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/aggregated/forwardingRules' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deletes the specified ForwardingRule resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.forwardingRules.delete({ + * // Name of the ForwardingRule resource to delete. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * * main().catch(e => { * console.error(e); @@ -70794,31 +71299,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Globaladdresses$Delete, + params: Params$Resource$Forwardingrules$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Globaladdresses$Delete, + params?: Params$Resource$Forwardingrules$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Globaladdresses$Delete, + params: Params$Resource$Forwardingrules$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Globaladdresses$Delete, + params: Params$Resource$Forwardingrules$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Globaladdresses$Delete, + params: Params$Resource$Forwardingrules$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Globaladdresses$Delete + | Params$Resource$Forwardingrules$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -70833,12 +71338,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Delete; + {}) as Params$Resource$Forwardingrules$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Delete; + params = {} as Params$Resource$Forwardingrules$Delete; options = {}; } @@ -70853,7 +71358,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/addresses/{address}' + '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -70861,8 +71366,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'address'], - pathParams: ['address', 'project'], + requiredParams: ['project', 'region', 'forwardingRule'], + pathParams: ['forwardingRule', 'project', 'region'], context: this.context, }; if (callback) { @@ -70876,7 +71381,7 @@ export namespace compute_preview { } /** - * Returns the specified address resource. + * Returns the specified ForwardingRule resource. * @example * ```js * // Before running the sample: @@ -70909,40 +71414,60 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.get({ - * // Name of the address resource to return. - * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.forwardingRules.get({ + * // Name of the ForwardingRule resource to return. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * view: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "address": "my_address", - * // "addressType": "my_addressType", + * // "IPAddress": "my_IPAddress", + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "ipCollection": "my_ipCollection", * // "ipVersion": "my_ipVersion", - * // "ipv6EndpointType": "my_ipv6EndpointType", + * // "isMirroringCollector": false, * // "kind": "my_kind", * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], * // "name": "my_name", * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", * // "networkTier": "my_networkTier", - * // "prefixLength": 0, - * // "purpose": "my_purpose", + * // "noAutomateDnsZone": false, + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "serviceClassId": "my_serviceClassId", - * // "status": "my_status", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], * // "subnetwork": "my_subnetwork", - * // "users": [] + * // "target": "my_target" * // } * } * @@ -70959,51 +71484,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Globaladdresses$Get, + params: Params$Resource$Forwardingrules$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Globaladdresses$Get, + params?: Params$Resource$Forwardingrules$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Globaladdresses$Get, + params: Params$Resource$Forwardingrules$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Globaladdresses$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Globaladdresses$Get, - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Globaladdresses$Get - | BodyResponseCallback + | Params$Resource$Forwardingrules$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Get; + {}) as Params$Resource$Forwardingrules$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Get; + params = {} as Params$Resource$Forwardingrules$Get; options = {}; } @@ -71018,7 +71544,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/addresses/{address}' + '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -71026,23 +71552,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'address'], - pathParams: ['address', 'project'], + requiredParams: ['project', 'region', 'forwardingRule'], + pathParams: ['forwardingRule', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates an address resource in the specified project by using the data - * included in the request. + * Creates a ForwardingRule resource in the specified project and region using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -71074,10 +71600,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.insert({ + * const res = await compute.forwardingRules.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -71097,29 +71625,45 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "address": "my_address", - * // "addressType": "my_addressType", + * // "IPAddress": "my_IPAddress", + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "ipCollection": "my_ipCollection", * // "ipVersion": "my_ipVersion", - * // "ipv6EndpointType": "my_ipv6EndpointType", + * // "isMirroringCollector": false, * // "kind": "my_kind", * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], * // "name": "my_name", * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", * // "networkTier": "my_networkTier", - * // "prefixLength": 0, - * // "purpose": "my_purpose", + * // "noAutomateDnsZone": false, + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "serviceClassId": "my_serviceClassId", - * // "status": "my_status", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], * // "subnetwork": "my_subnetwork", - * // "users": [] + * // "target": "my_target" * // } * }, * }); @@ -71130,6 +71674,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -71172,31 +71717,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Globaladdresses$Insert, + params: Params$Resource$Forwardingrules$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Globaladdresses$Insert, + params?: Params$Resource$Forwardingrules$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Globaladdresses$Insert, + params: Params$Resource$Forwardingrules$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Globaladdresses$Insert, + params: Params$Resource$Forwardingrules$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Globaladdresses$Insert, + params: Params$Resource$Forwardingrules$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Globaladdresses$Insert + | Params$Resource$Forwardingrules$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -71211,12 +71756,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Insert; + {}) as Params$Resource$Forwardingrules$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Insert; + params = {} as Params$Resource$Forwardingrules$Insert; options = {}; } @@ -71230,7 +71775,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/addresses' + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -71238,8 +71784,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -71253,7 +71799,8 @@ export namespace compute_preview { } /** - * Retrieves a list of global addresses. + * Retrieves a list of ForwardingRule resources available to the specified + * project and region. * @example * ```js * // Before running the sample: @@ -71286,7 +71833,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.list({ + * const res = await compute.forwardingRules.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -71371,6 +71918,8 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -71398,52 +71947,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Globaladdresses$List, + params: Params$Resource$Forwardingrules$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Globaladdresses$List, + params?: Params$Resource$Forwardingrules$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Globaladdresses$List, + params: Params$Resource$Forwardingrules$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globaladdresses$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globaladdresses$List, - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Globaladdresses$List - | BodyResponseCallback + | Params$Resource$Forwardingrules$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$List; + {}) as Params$Resource$Forwardingrules$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$List; + params = {} as Params$Resource$Forwardingrules$List; options = {}; } @@ -71457,7 +72006,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/addresses' + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -71465,22 +72015,26 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Moves the specified address resource from one project to another project. + * Updates the specified forwarding rule with the data included in the + * request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. Currently, you can only + * patch the network_tier field. * @example * ```js * // Before running the sample: @@ -71512,12 +72066,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.move({ - * // Name of the address resource to move. - * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Source project ID which the Address is moved from. + * const res = await compute.forwardingRules.patch({ + * // Name of the ForwardingRule resource to patch. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -71537,8 +72093,45 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { + * // "IPAddress": "my_IPAddress", + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "destinationAddress": "my_destinationAddress" + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], + * // "name": "my_name", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], + * // "subnetwork": "my_subnetwork", + * // "target": "my_target" * // } * }, * }); @@ -71549,6 +72142,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -71590,32 +72184,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - move( - params: Params$Resource$Globaladdresses$Move, + patch( + params: Params$Resource$Forwardingrules$Patch, options: StreamMethodOptions ): Promise>; - move( - params?: Params$Resource$Globaladdresses$Move, + patch( + params?: Params$Resource$Forwardingrules$Patch, options?: MethodOptions ): Promise>; - move( - params: Params$Resource$Globaladdresses$Move, + patch( + params: Params$Resource$Forwardingrules$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - move( - params: Params$Resource$Globaladdresses$Move, + patch( + params: Params$Resource$Forwardingrules$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - move( - params: Params$Resource$Globaladdresses$Move, + patch( + params: Params$Resource$Forwardingrules$Patch, callback: BodyResponseCallback ): void; - move(callback: BodyResponseCallback): void; - move( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Globaladdresses$Move + | Params$Resource$Forwardingrules$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -71630,12 +72224,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Move; + {}) as Params$Resource$Forwardingrules$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Move; + params = {} as Params$Resource$Forwardingrules$Patch; options = {}; } @@ -71650,16 +72244,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/addresses/{address}/move' + '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'address'], - pathParams: ['address', 'project'], + requiredParams: ['project', 'region', 'forwardingRule'], + pathParams: ['forwardingRule', 'project', 'region'], context: this.context, }; if (callback) { @@ -71673,8 +72267,9 @@ export namespace compute_preview { } /** - * Sets the labels on a GlobalAddress. To learn more about labels, read theLabeling - * Resources documentation. + * Sets the labels on the specified resource. To learn more about labels, + * read the + * Labeling Resources documentation. * @example * ```js * // Before running the sample: @@ -71706,12 +72301,28 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.setLabels({ + * const res = await compute.forwardingRules.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -71729,6 +72340,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -71771,31 +72383,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ setLabels( - params: Params$Resource$Globaladdresses$Setlabels, + params: Params$Resource$Forwardingrules$Setlabels, options: StreamMethodOptions ): Promise>; setLabels( - params?: Params$Resource$Globaladdresses$Setlabels, + params?: Params$Resource$Forwardingrules$Setlabels, options?: MethodOptions ): Promise>; setLabels( - params: Params$Resource$Globaladdresses$Setlabels, + params: Params$Resource$Forwardingrules$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Globaladdresses$Setlabels, + params: Params$Resource$Forwardingrules$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Globaladdresses$Setlabels, + params: Params$Resource$Forwardingrules$Setlabels, callback: BodyResponseCallback ): void; setLabels(callback: BodyResponseCallback): void; setLabels( paramsOrCallback?: - | Params$Resource$Globaladdresses$Setlabels + | Params$Resource$Forwardingrules$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -71810,12 +72422,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Setlabels; + {}) as Params$Resource$Forwardingrules$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Setlabels; + params = {} as Params$Resource$Forwardingrules$Setlabels; options = {}; } @@ -71830,7 +72442,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/addresses/{resource}/setLabels' + '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -71838,8 +72450,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -71853,7 +72465,8 @@ export namespace compute_preview { } /** - * Returns permissions that a caller has on the specified resource. + * Changes target URL for forwarding rule. The new target should be of the + * same type as the old target. * @example * ```js * // Before running the sample: @@ -71877,7 +72490,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -71886,18 +72498,34 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.testIamPermissions({ + * const res = await compute.forwardingRules.setTarget({ + * // Name of the ForwardingRule resource in which target is to be set. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "target": "my_target" * // } * }, * }); @@ -71905,7 +72533,36 @@ export namespace compute_preview { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -71921,56 +72578,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Globaladdresses$Testiampermissions, + setTarget( + params: Params$Resource$Forwardingrules$Settarget, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Globaladdresses$Testiampermissions, + setTarget( + params?: Params$Resource$Forwardingrules$Settarget, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Globaladdresses$Testiampermissions, + ): Promise>; + setTarget( + params: Params$Resource$Forwardingrules$Settarget, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Globaladdresses$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Globaladdresses$Testiampermissions, - callback: BodyResponseCallback + setTarget( + params: Params$Resource$Forwardingrules$Settarget, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + setTarget( + params: Params$Resource$Forwardingrules$Settarget, + callback: BodyResponseCallback ): void; - testIamPermissions( + setTarget(callback: BodyResponseCallback): void; + setTarget( paramsOrCallback?: - | Params$Resource$Globaladdresses$Testiampermissions - | BodyResponseCallback + | Params$Resource$Forwardingrules$Settarget + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Testiampermissions; + {}) as Params$Resource$Forwardingrules$Settarget; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Testiampermissions; + params = {} as Params$Resource$Forwardingrules$Settarget; options = {}; } @@ -71985,7 +72638,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/addresses/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -71993,30 +72646,144 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'forwardingRule'], + pathParams: ['forwardingRule', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Globaladdresses$Delete extends StandardParameters { + export interface Params$Resource$Forwardingrules$Aggregatedlist extends StandardParameters { /** - * Name of the address resource to delete. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - address?: string; + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Forwardingrules$Delete extends StandardParameters { + /** + * Name of the ForwardingRule resource to delete. + */ + forwardingRule?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -72034,21 +72801,33 @@ export namespace compute_preview { */ requestId?: string; } - export interface Params$Resource$Globaladdresses$Get extends StandardParameters { + export interface Params$Resource$Forwardingrules$Get extends StandardParameters { /** - * Name of the address resource to return. + * Name of the ForwardingRule resource to return. */ - address?: string; + forwardingRule?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * + */ + view?: string; } - export interface Params$Resource$Globaladdresses$Insert extends StandardParameters { + export interface Params$Resource$Forwardingrules$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -72069,9 +72848,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$Address; + requestBody?: Schema$ForwardingRule; } - export interface Params$Resource$Globaladdresses$List extends StandardParameters { + export interface Params$Resource$Forwardingrules$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -72165,16 +72944,24 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; } - export interface Params$Resource$Globaladdresses$Move extends StandardParameters { + export interface Params$Resource$Forwardingrules$Patch extends StandardParameters { /** - * Name of the address resource to move. + * Name of the ForwardingRule resource to patch. */ - address?: string; + forwardingRule?: string; /** - * Source project ID which the Address is moved from. + * Project ID for this request. */ project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -72195,13 +72982,33 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$GlobalAddressesMoveRequest; + requestBody?: Schema$ForwardingRule; } - export interface Params$Resource$Globaladdresses$Setlabels extends StandardParameters { + export interface Params$Resource$Forwardingrules$Setlabels extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * The region for this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; /** * Name or id of the resource for this request. */ @@ -72210,32 +73017,55 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$GlobalSetLabelsRequest; + requestBody?: Schema$RegionSetLabelsRequest; } - export interface Params$Resource$Globaladdresses$Testiampermissions extends StandardParameters { + export interface Params$Resource$Forwardingrules$Settarget extends StandardParameters { + /** + * Name of the ForwardingRule resource in which target is to be set. + */ + forwardingRule?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * Name of the region scoping this request. */ - resource?: string; + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$TargetReference; } - export class Resource$Globalforwardingrules { + export class Resource$Futurereservations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified GlobalForwardingRule resource. + * Retrieves an aggregated list of future reservations. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -72259,6 +73089,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -72267,60 +73098,115 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.delete({ - * // Name of the ForwardingRule resource to delete. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.futureReservations.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -72336,52 +73222,61 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Globalforwardingrules$Delete, + aggregatedList( + params: Params$Resource$Futurereservations$Aggregatedlist, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globalforwardingrules$Delete, + aggregatedList( + params?: Params$Resource$Futurereservations$Aggregatedlist, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globalforwardingrules$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Futurereservations$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalforwardingrules$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Futurereservations$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalforwardingrules$Delete, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Futurereservations$Aggregatedlist, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Delete - | BodyResponseCallback + | Params$Resource$Futurereservations$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Delete; + {}) as Params$Resource$Futurereservations$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Delete; + params = {} as Params$Resource$Futurereservations$Aggregatedlist; options = {}; } @@ -72396,31 +73291,32 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/forwardingRules/{forwardingRule}' + '/compute/v1/projects/{project}/aggregated/futureReservations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'forwardingRule'], - pathParams: ['forwardingRule', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns the specified GlobalForwardingRule resource. Gets a list of - * available forwarding rules by making a list() request. + * Cancel the specified future reservation. * @example * ```js * // Before running the sample: @@ -72444,7 +73340,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -72453,58 +73348,63 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.get({ - * // Name of the ForwardingRule resource to return. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.futureReservations.cancel({ + * // Name of the future reservation to retrieve. Name should conform to RFC1035. + * futureReservation: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * - * view: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "IPAddress": "my_IPAddress", - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -72520,53 +73420,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Globalforwardingrules$Get, + cancel( + params: Params$Resource$Futurereservations$Cancel, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globalforwardingrules$Get, + cancel( + params?: Params$Resource$Futurereservations$Cancel, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Globalforwardingrules$Get, + ): Promise>; + cancel( + params: Params$Resource$Futurereservations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalforwardingrules$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Futurereservations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalforwardingrules$Get, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Futurereservations$Cancel, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Get - | BodyResponseCallback + | Params$Resource$Futurereservations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Get; + {}) as Params$Resource$Futurereservations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Get; + params = {} as Params$Resource$Futurereservations$Cancel; options = {}; } @@ -72581,31 +73480,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/forwardingRules/{forwardingRule}' + '/compute/v1/projects/{project}/zones/{zone}/futureReservations/{futureReservation}/cancel' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'forwardingRule'], - pathParams: ['forwardingRule', 'project'], + requiredParams: ['project', 'zone', 'futureReservation'], + pathParams: ['futureReservation', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a GlobalForwardingRule resource in the specified project using - * the data included in the request. + * Deletes the specified future reservation. * @example * ```js * // Before running the sample: @@ -72637,7 +73535,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.insert({ + * const res = await compute.futureReservations.delete({ + * // Name of the future reservation to retrieve. Name should conform to RFC1035. + * futureReservation: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -72655,52 +73555,8 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "IPAddress": "my_IPAddress", - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], - * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" - * // } - * }, + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -72709,6 +73565,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -72750,32 +73607,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Globalforwardingrules$Insert, + delete( + params: Params$Resource$Futurereservations$Delete, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Globalforwardingrules$Insert, + delete( + params?: Params$Resource$Futurereservations$Delete, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Globalforwardingrules$Insert, + delete( + params: Params$Resource$Futurereservations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalforwardingrules$Insert, + delete( + params: Params$Resource$Futurereservations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalforwardingrules$Insert, + delete( + params: Params$Resource$Futurereservations$Delete, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Insert + | Params$Resource$Futurereservations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -72790,12 +73647,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Insert; + {}) as Params$Resource$Futurereservations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Insert; + params = {} as Params$Resource$Futurereservations$Delete; options = {}; } @@ -72809,16 +73666,17 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/forwardingRules' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'futureReservation'], + pathParams: ['futureReservation', 'project', 'zone'], context: this.context, }; if (callback) { @@ -72832,8 +73690,7 @@ export namespace compute_preview { } /** - * Retrieves a list of GlobalForwardingRule resources available to the - * specified project. + * Retrieves information about the specified future reservation. * @example * ```js * // Before running the sample: @@ -72866,102 +73723,50 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.futureReservations.get({ + * // Name of the future reservation to retrieve. Name should conform to RFC1035. + * futureReservation: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "aggregateReservation": {}, + * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", + * // "autoCreatedReservationsDuration": {}, + * // "autoDeleteAutoCreatedReservations": false, + * // "colocationResource": "my_colocationResource", + * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", + * // "creationTimestamp": "my_creationTimestamp", + * // "deploymentType": "my_deploymentType", + * // "description": "my_description", + * // "enableEmergentMaintenance": false, * // "id": "my_id", - * // "items": [], * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "namePrefix": "my_namePrefix", + * // "params": {}, + * // "planningStatus": "my_planningStatus", + * // "reservationMode": "my_reservationMode", + * // "reservationName": "my_reservationName", + * // "resourceMetadata": {}, + * // "resourceName": "my_resourceName", + * // "schedulingType": "my_schedulingType", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, + * // "specificReservationRequired": false, + * // "specificSkuProperties": {}, + * // "status": {}, + * // "storagePoolProperties": {}, + * // "timeWindow": {}, + * // "zone": "my_zone" * // } * } * @@ -72977,53 +73782,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Globalforwardingrules$List, + get( + params: Params$Resource$Futurereservations$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Globalforwardingrules$List, + get( + params?: Params$Resource$Futurereservations$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Globalforwardingrules$List, + ): Promise>; + get( + params: Params$Resource$Futurereservations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globalforwardingrules$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Futurereservations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globalforwardingrules$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Futurereservations$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$List - | BodyResponseCallback + | Params$Resource$Futurereservations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$List; + {}) as Params$Resource$Futurereservations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$List; + params = {} as Params$Resource$Futurereservations$Get; options = {}; } @@ -73037,7 +73842,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/forwardingRules' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -73045,26 +73851,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'futureReservation'], + pathParams: ['futureReservation', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified forwarding rule with the data included in the - * request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. Currently, you can only - * patch the network_tier field. + * Creates a new Future Reservation. * @example * ```js * // Before running the sample: @@ -73096,9 +73898,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.patch({ - * // Name of the ForwardingRule resource to patch. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.futureReservations.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -73116,50 +73916,44 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "IPAddress": "my_IPAddress", - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", + * // "aggregateReservation": {}, + * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", + * // "autoCreatedReservationsDuration": {}, + * // "autoDeleteAutoCreatedReservations": false, + * // "colocationResource": "my_colocationResource", + * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", * // "creationTimestamp": "my_creationTimestamp", + * // "deploymentType": "my_deploymentType", * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", + * // "enableEmergentMaintenance": false, * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", + * // "namePrefix": "my_namePrefix", + * // "params": {}, + * // "planningStatus": "my_planningStatus", + * // "reservationMode": "my_reservationMode", + * // "reservationName": "my_reservationName", + * // "resourceMetadata": {}, + * // "resourceName": "my_resourceName", + * // "schedulingType": "my_schedulingType", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" + * // "shareSettings": {}, + * // "specificReservationRequired": false, + * // "specificSkuProperties": {}, + * // "status": {}, + * // "storagePoolProperties": {}, + * // "timeWindow": {}, + * // "zone": "my_zone" * // } * }, * }); @@ -73170,6 +73964,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -73211,32 +74006,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Globalforwardingrules$Patch, + insert( + params: Params$Resource$Futurereservations$Insert, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Globalforwardingrules$Patch, + insert( + params?: Params$Resource$Futurereservations$Insert, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Globalforwardingrules$Patch, + insert( + params: Params$Resource$Futurereservations$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalforwardingrules$Patch, + insert( + params: Params$Resource$Futurereservations$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalforwardingrules$Patch, + insert( + params: Params$Resource$Futurereservations$Insert, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Patch + | Params$Resource$Futurereservations$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -73251,12 +74046,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Patch; + {}) as Params$Resource$Futurereservations$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Patch; + params = {} as Params$Resource$Futurereservations$Insert; options = {}; } @@ -73271,16 +74066,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/forwardingRules/{forwardingRule}' + '/compute/v1/projects/{project}/zones/{zone}/futureReservations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'forwardingRule'], - pathParams: ['forwardingRule', 'project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -73294,9 +74089,8 @@ export namespace compute_preview { } /** - * Sets the labels on the specified resource. To learn more about labels, - * read the - * Labeling resources documentation. + * A list of all the future reservations that have been configured for the + * specified project in specified zone. * @example * ```js * // Before running the sample: @@ -73320,6 +74114,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -73328,55 +74123,106 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.setLabels({ + * const res = await compute.futureReservations.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -73392,52 +74238,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Globalforwardingrules$Setlabels, + list( + params: Params$Resource$Futurereservations$List, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Globalforwardingrules$Setlabels, + list( + params?: Params$Resource$Futurereservations$List, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Globalforwardingrules$Setlabels, + ): Promise>; + list( + params: Params$Resource$Futurereservations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Globalforwardingrules$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Futurereservations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Globalforwardingrules$Setlabels, - callback: BodyResponseCallback + list( + params: Params$Resource$Futurereservations$List, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Setlabels - | BodyResponseCallback + | Params$Resource$Futurereservations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Setlabels; + {}) as Params$Resource$Futurereservations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Setlabels; + params = {} as Params$Resource$Futurereservations$List; options = {}; } @@ -73452,31 +74303,32 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/forwardingRules/{resource}/setLabels' + '/compute/v1/projects/{project}/zones/{zone}/futureReservations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Changes target URL for the GlobalForwardingRule resource. The new target - * should be of the same type as the old target. + * Updates the specified future reservation. * @example * ```js * // Before running the sample: @@ -73508,9 +74360,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.setTarget({ - * // Name of the ForwardingRule resource in which target is to be set. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.futureReservations.update({ + * // Name of the reservation to update. Name should conform to RFC1035. + * futureReservation: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -73528,12 +74380,46 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "target": "my_target" + * // "aggregateReservation": {}, + * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", + * // "autoCreatedReservationsDuration": {}, + * // "autoDeleteAutoCreatedReservations": false, + * // "colocationResource": "my_colocationResource", + * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", + * // "creationTimestamp": "my_creationTimestamp", + * // "deploymentType": "my_deploymentType", + * // "description": "my_description", + * // "enableEmergentMaintenance": false, + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "namePrefix": "my_namePrefix", + * // "params": {}, + * // "planningStatus": "my_planningStatus", + * // "reservationMode": "my_reservationMode", + * // "reservationName": "my_reservationName", + * // "resourceMetadata": {}, + * // "resourceName": "my_resourceName", + * // "schedulingType": "my_schedulingType", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, + * // "specificReservationRequired": false, + * // "specificSkuProperties": {}, + * // "status": {}, + * // "storagePoolProperties": {}, + * // "timeWindow": {}, + * // "zone": "my_zone" * // } * }, * }); @@ -73544,6 +74430,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -73585,32 +74472,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTarget( - params: Params$Resource$Globalforwardingrules$Settarget, + update( + params: Params$Resource$Futurereservations$Update, options: StreamMethodOptions ): Promise>; - setTarget( - params?: Params$Resource$Globalforwardingrules$Settarget, + update( + params?: Params$Resource$Futurereservations$Update, options?: MethodOptions ): Promise>; - setTarget( - params: Params$Resource$Globalforwardingrules$Settarget, + update( + params: Params$Resource$Futurereservations$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTarget( - params: Params$Resource$Globalforwardingrules$Settarget, + update( + params: Params$Resource$Futurereservations$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTarget( - params: Params$Resource$Globalforwardingrules$Settarget, + update( + params: Params$Resource$Futurereservations$Update, callback: BodyResponseCallback ): void; - setTarget(callback: BodyResponseCallback): void; - setTarget( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Settarget + | Params$Resource$Futurereservations$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -73625,12 +74512,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Settarget; + {}) as Params$Resource$Futurereservations$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Settarget; + params = {} as Params$Resource$Futurereservations$Update; options = {}; } @@ -73645,16 +74532,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/forwardingRules/{forwardingRule}/setTarget' + '/compute/v1/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'forwardingRule'], - pathParams: ['forwardingRule', 'project'], + requiredParams: ['project', 'zone', 'futureReservation'], + pathParams: ['futureReservation', 'project', 'zone'], context: this.context, }; if (callback) { @@ -73668,47 +74555,191 @@ export namespace compute_preview { } } - export interface Params$Resource$Globalforwardingrules$Delete extends StandardParameters { - /** - * Name of the ForwardingRule resource to delete. - */ - forwardingRule?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Futurereservations$Aggregatedlist extends StandardParameters { /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Futurereservations$Cancel extends StandardParameters { + /** + * Name of the future reservation to retrieve. Name should conform to RFC1035. + */ + futureReservation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ requestId?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; } - export interface Params$Resource$Globalforwardingrules$Get extends StandardParameters { + export interface Params$Resource$Futurereservations$Delete extends StandardParameters { /** - * Name of the ForwardingRule resource to return. + * Name of the future reservation to retrieve. Name should conform to RFC1035. */ - forwardingRule?: string; + futureReservation?: string; /** * Project ID for this request. */ project?: string; /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - view?: string; + requestId?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; } - export interface Params$Resource$Globalforwardingrules$Insert extends StandardParameters { + export interface Params$Resource$Futurereservations$Get extends StandardParameters { + /** + * Name of the future reservation to retrieve. Name should conform to RFC1035. + */ + futureReservation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Futurereservations$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -73729,13 +74760,17 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$ForwardingRule; + requestBody?: Schema$FutureReservation; } - export interface Params$Resource$Globalforwardingrules$List extends StandardParameters { + export interface Params$Resource$Futurereservations$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -73829,12 +74864,16 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; } - export interface Params$Resource$Globalforwardingrules$Patch extends StandardParameters { + export interface Params$Resource$Futurereservations$Update extends StandardParameters { /** - * Name of the ForwardingRule resource to patch. + * Name of the reservation to update. Name should conform to RFC1035. */ - forwardingRule?: string; + futureReservation?: string; /** * Project ID for this request. */ @@ -73855,67 +74894,29 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ForwardingRule; - } - export interface Params$Resource$Globalforwardingrules$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetLabelsRequest; - } - export interface Params$Resource$Globalforwardingrules$Settarget extends StandardParameters { /** - * Name of the ForwardingRule resource in which target is to be set. - */ - forwardingRule?: string; - /** - * Project ID for this request. + * update_mask indicates fields to be updated as part of this request. */ - project?: string; + updateMask?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Name of the zone for this request. Name should conform to RFC1035. */ - requestId?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$TargetReference; + requestBody?: Schema$FutureReservation; } - export class Resource$Globalfrontendsettings { + export class Resource$Globaladdresses { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Gets the Global Frontend Billing Bundle Settings for a project. + * Deletes the specified address resource. * @example * ```js * // Before running the sample: @@ -73939,7 +74940,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -73948,21 +74948,61 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalFrontendSettings.get({ - * // Required. Project ID for this request. - * project: 'placeholder-value', + * const res = await compute.globalAddresses.delete({ + * // Name of the address resource to delete. + * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "bundleType": "my_bundleType", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "etag": "my_etag", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", * // "name": "my_name", - * // "selfLink": "my_selfLink" + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -73978,54 +75018,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Globalfrontendsettings$Get, + delete( + params: Params$Resource$Globaladdresses$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globalfrontendsettings$Get, + delete( + params?: Params$Resource$Globaladdresses$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Globalfrontendsettings$Get, + ): Promise>; + delete( + params: Params$Resource$Globaladdresses$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalfrontendsettings$Get, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Globaladdresses$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalfrontendsettings$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Globaladdresses$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Globalfrontendsettings$Get - | BodyResponseCallback + | Params$Resource$Globaladdresses$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalfrontendsettings$Get; + {}) as Params$Resource$Globaladdresses$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalfrontendsettings$Get; + params = {} as Params$Resource$Globaladdresses$Delete; options = {}; } @@ -74040,30 +75078,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/globalFrontendSettings' + '/compute/v1/projects/{project}/global/addresses/{address}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'address'], + pathParams: ['address', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the Global Frontend Billing Bundle Settings for a project. + * Returns the specified address resource. * @example * ```js * // Before running the sample: @@ -74087,6 +75125,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -74095,33 +75134,40 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalFrontendSettings.patch({ - * // Required. Project ID for this request. - * project: 'placeholder-value', - * // An optional request ID to identify requests. - * requestId: 'placeholder-value', - * // Field mask to support patch. E.g., "type". - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bundleType": "my_bundleType", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "etag": "my_etag", - * // "id": "my_id", - * // "name": "my_name", - * // "selfLink": "my_selfLink" - * // } - * }, + * const res = await compute.globalAddresses.get({ + * // Name of the address resource to return. + * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * }); * console.log(res.data); * * // Example response * // { - * // "operation": {} + * // "address": "my_address", + * // "addressType": "my_addressType", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "ipv6EndpointType": "my_ipv6EndpointType", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkTier": "my_networkTier", + * // "prefixLength": 0, + * // "purpose": "my_purpose", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "serviceClassId": "my_serviceClassId", + * // "status": "my_status", + * // "subnetwork": "my_subnetwork", + * // "users": [] * // } * } * @@ -74137,61 +75183,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Globalfrontendsettings$Patch, + get( + params: Params$Resource$Globaladdresses$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Globalfrontendsettings$Patch, + get( + params?: Params$Resource$Globaladdresses$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - patch( - params: Params$Resource$Globalfrontendsettings$Patch, + ): Promise>; + get( + params: Params$Resource$Globaladdresses$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalfrontendsettings$Patch, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Globalfrontendsettings$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Globaladdresses$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - callback: BodyResponseCallback + get( + params: Params$Resource$Globaladdresses$Get, + callback: BodyResponseCallback ): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Globalfrontendsettings$Patch - | BodyResponseCallback + | Params$Resource$Globaladdresses$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalfrontendsettings$Patch; + {}) as Params$Resource$Globaladdresses$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalfrontendsettings$Patch; + params = {} as Params$Resource$Globaladdresses$Get; options = {}; } @@ -74206,65 +75243,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/globalFrontendSettings' + '/compute/v1/projects/{project}/global/addresses/{address}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'address'], + pathParams: ['address', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Globalfrontendsettings$Get extends StandardParameters { - /** - * Required. Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globalfrontendsettings$Patch extends StandardParameters { - /** - * Required. Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. - */ - requestId?: string; - /** - * Field mask to support patch. E.g., "type". - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalFrontendSettings; - } - - export class Resource$Globalnetworkendpointgroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Attach a network endpoint to the specified network endpoint group. + * Creates an address resource in the specified project by using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -74296,10 +75299,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.attachNetworkEndpoints({ - * // The name of the network endpoint group where you are attaching network - * // endpoints to. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.globalAddresses.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -74322,7 +75322,29 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "networkEndpoints": [] + * // "address": "my_address", + * // "addressType": "my_addressType", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "ipv6EndpointType": "my_ipv6EndpointType", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkTier": "my_networkTier", + * // "prefixLength": 0, + * // "purpose": "my_purpose", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "serviceClassId": "my_serviceClassId", + * // "status": "my_status", + * // "subnetwork": "my_subnetwork", + * // "users": [] * // } * }, * }); @@ -74333,6 +75355,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -74374,34 +75397,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - attachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + insert( + params: Params$Resource$Globaladdresses$Insert, options: StreamMethodOptions ): Promise>; - attachNetworkEndpoints( - params?: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + insert( + params?: Params$Resource$Globaladdresses$Insert, options?: MethodOptions ): Promise>; - attachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + insert( + params: Params$Resource$Globaladdresses$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + insert( + params: Params$Resource$Globaladdresses$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, - callback: BodyResponseCallback - ): void; - attachNetworkEndpoints( + insert( + params: Params$Resource$Globaladdresses$Insert, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints + | Params$Resource$Globaladdresses$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -74416,13 +75437,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints; + {}) as Params$Resource$Globaladdresses$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints; + params = {} as Params$Resource$Globaladdresses$Insert; options = {}; } @@ -74436,8 +75456,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' + rootUrl + '/compute/v1/projects/{project}/global/addresses' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -74445,8 +75464,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -74460,8 +75479,7 @@ export namespace compute_preview { } /** - * Deletes the specified network endpoint group.Note that the NEG cannot be - * deleted if there are backend services referencing it. + * Retrieves a list of global addresses. * @example * ```js * // Before running the sample: @@ -74485,6 +75503,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -74493,61 +75512,102 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.delete({ - * // The name of the network endpoint group to delete. It should comply with - * // RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.globalAddresses.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -74563,52 +75623,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Globalnetworkendpointgroups$Delete, + list( + params: Params$Resource$Globaladdresses$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globalnetworkendpointgroups$Delete, + list( + params?: Params$Resource$Globaladdresses$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globalnetworkendpointgroups$Delete, + ): Promise>; + list( + params: Params$Resource$Globaladdresses$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalnetworkendpointgroups$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Globaladdresses$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalnetworkendpointgroups$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Globaladdresses$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Delete - | BodyResponseCallback + | Params$Resource$Globaladdresses$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Delete; + {}) as Params$Resource$Globaladdresses$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalnetworkendpointgroups$Delete; + params = {} as Params$Resource$Globaladdresses$List; options = {}; } @@ -74622,31 +75683,30 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}' + rootUrl + '/compute/v1/projects/{project}/global/addresses' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Detach the network endpoint from the specified network endpoint group. + * Moves the specified address resource from one project to another project. * @example * ```js * // Before running the sample: @@ -74678,11 +75738,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.detachNetworkEndpoints({ - * // The name of the network endpoint group where you are removing network - * // endpoints. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', - * // Project ID for this request. + * const res = await compute.globalAddresses.move({ + * // Name of the address resource to move. + * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Source project ID which the Address is moved from. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // An optional request ID to identify requests. Specify a unique request ID so @@ -74704,7 +75763,8 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "networkEndpoints": [] + * // "description": "my_description", + * // "destinationAddress": "my_destinationAddress" * // } * }, * }); @@ -74715,6 +75775,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -74756,34 +75817,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - detachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, + move( + params: Params$Resource$Globaladdresses$Move, options: StreamMethodOptions ): Promise>; - detachNetworkEndpoints( - params?: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, + move( + params?: Params$Resource$Globaladdresses$Move, options?: MethodOptions ): Promise>; - detachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, + move( + params: Params$Resource$Globaladdresses$Move, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, + move( + params: Params$Resource$Globaladdresses$Move, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, - callback: BodyResponseCallback - ): void; - detachNetworkEndpoints( + move( + params: Params$Resource$Globaladdresses$Move, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( + move(callback: BodyResponseCallback): void; + move( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints + | Params$Resource$Globaladdresses$Move | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -74798,13 +75857,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints; + {}) as Params$Resource$Globaladdresses$Move; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints; + params = {} as Params$Resource$Globaladdresses$Move; options = {}; } @@ -74819,7 +75877,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' + '/compute/v1/projects/{project}/global/addresses/{address}/move' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -74827,8 +75885,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['project', 'address'], + pathParams: ['address', 'project'], context: this.context, }; if (callback) { @@ -74842,7 +75900,8 @@ export namespace compute_preview { } /** - * Returns the specified network endpoint group. + * Sets the labels on a GlobalAddress. To learn more about labels, read theLabeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -74866,7 +75925,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -74875,37 +75933,55 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.get({ - * // The name of the network endpoint group. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.globalAddresses.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "serviceClassId": "my_serviceClassId", - * // "size": 0, - * // "subnetwork": "my_subnetwork", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -74922,54 +75998,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Globalnetworkendpointgroups$Get, + setLabels( + params: Params$Resource$Globaladdresses$Setlabels, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globalnetworkendpointgroups$Get, + setLabels( + params?: Params$Resource$Globaladdresses$Setlabels, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Globalnetworkendpointgroups$Get, + ): Promise>; + setLabels( + params: Params$Resource$Globaladdresses$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalnetworkendpointgroups$Get, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Globaladdresses$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalnetworkendpointgroups$Get, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Globaladdresses$Setlabels, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Get - | BodyResponseCallback + | Params$Resource$Globaladdresses$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Get; + {}) as Params$Resource$Globaladdresses$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalnetworkendpointgroups$Get; + params = {} as Params$Resource$Globaladdresses$Setlabels; options = {}; } @@ -74984,45 +76058,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}' + '/compute/v1/projects/{project}/global/addresses/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a network endpoint group in the specified project using the - * parameters that are included in the request. - * - * Note: Use the following APIs to manage network endpoint groups: - * - * - - * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity - * NEGs): zonal - * API - * - - * To manage NEGs with regional scope (such as regional internet NEGs, - * serverless NEGs, Private Service Connect NEGs): regional - * API - * - - * To manage NEGs with global scope (such as global internet NEGs):global - * API + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -75046,6 +76105,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -75054,50 +76114,18 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.insert({ + * const res = await compute.globalAddresses.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, - * // "description": "my_description", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "serviceClassId": "my_serviceClassId", - * // "size": 0, - * // "subnetwork": "my_subnetwork", - * // "zone": "my_zone" + * // "permissions": [] * // } * }, * }); @@ -75105,35 +76133,7 @@ export namespace compute_preview { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -75149,52 +76149,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Globalnetworkendpointgroups$Insert, + testIamPermissions( + params: Params$Resource$Globaladdresses$Testiampermissions, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Globalnetworkendpointgroups$Insert, + testIamPermissions( + params?: Params$Resource$Globaladdresses$Testiampermissions, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Globalnetworkendpointgroups$Insert, + ): Promise>; + testIamPermissions( + params: Params$Resource$Globaladdresses$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalnetworkendpointgroups$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Globaladdresses$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalnetworkendpointgroups$Insert, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Globaladdresses$Testiampermissions, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Insert - | BodyResponseCallback + | Params$Resource$Globaladdresses$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Insert; + {}) as Params$Resource$Globaladdresses$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalnetworkendpointgroups$Insert; + params = {} as Params$Resource$Globaladdresses$Testiampermissions; options = {}; } @@ -75209,7 +76213,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networkEndpointGroups' + '/compute/v1/projects/{project}/global/addresses/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -75217,23 +76221,249 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Globaladdresses$Delete extends StandardParameters { /** - * Retrieves the list of network endpoint groups that are located in the - * specified project. + * Name of the address resource to delete. + */ + address?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + } + export interface Params$Resource$Globaladdresses$Get extends StandardParameters { + /** + * Name of the address resource to return. + */ + address?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Globaladdresses$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Address; + } + export interface Params$Resource$Globaladdresses$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Globaladdresses$Move extends StandardParameters { + /** + * Name of the address resource to move. + */ + address?: string; + /** + * Source project ID which the Address is moved from. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalAddressesMoveRequest; + } + export interface Params$Resource$Globaladdresses$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Globaladdresses$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Globalfolderoperations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the specified Operations resource. * @example * ```js * // Before running the sample: @@ -75266,102 +76496,46 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * const res = await compute.globalFolderOperations.get({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the Operations resource to return. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -75377,54 +76551,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Globalnetworkendpointgroups$List, + get( + params: Params$Resource$Globalfolderoperations$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Globalnetworkendpointgroups$List, + get( + params?: Params$Resource$Globalfolderoperations$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Globalnetworkendpointgroups$List, + ): Promise>; + get( + params: Params$Resource$Globalfolderoperations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globalnetworkendpointgroups$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Globalfolderoperations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globalnetworkendpointgroups$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Globalfolderoperations$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$List - | BodyResponseCallback + | Params$Resource$Globalfolderoperations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$List; + {}) as Params$Resource$Globalfolderoperations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalnetworkendpointgroups$List; + params = {} as Params$Resource$Globalfolderoperations$Get; options = {}; } @@ -75438,8 +76610,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/networkEndpointGroups' + rootUrl + '/compute/v1/{+folder}/global/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -75447,22 +76618,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['folder', 'operation'], + pathParams: ['folder', 'operation'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the network endpoints in the specified network endpoint group. + * Retrieves a list of Operation resources contained within the specified + * folder. * @example * ```js * // Before running the sample: @@ -75495,7 +76667,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.listNetworkEndpoints({ + * const res = await compute.globalFolderOperations.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -75555,15 +76727,14 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get * // the next page of results in subsequent list requests. Acceptable values are * // `0` to `500`, inclusive. (Default: `500`) * maxResults: 'placeholder-value', - * // The name of the network endpoint group from which you want to generate a - * // list of included network endpoints. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', * // Sorts list results by a certain order. By default, results * // are returned in alphanumerical order based on the resource name. * // @@ -75580,9 +76751,6 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * }); * console.log(res.data); * @@ -75592,6 +76760,7 @@ export namespace compute_preview { * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", * // "warning": {} * // } * } @@ -75608,62 +76777,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + list( + params: Params$Resource$Globalfolderoperations$List, options: StreamMethodOptions ): Promise>; - listNetworkEndpoints( - params?: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + list( + params?: Params$Resource$Globalfolderoperations$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + ): Promise>; + list( + params: Params$Resource$Globalfolderoperations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, - callback: BodyResponseCallback + list( + params: Params$Resource$Globalfolderoperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( - callback: BodyResponseCallback + list( + params: Params$Resource$Globalfolderoperations$List, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints - | BodyResponseCallback + | Params$Resource$Globalfolderoperations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints; + {}) as Params$Resource$Globalfolderoperations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints; + params = {} as Params$Resource$Globalfolderoperations$List; options = {}; } @@ -75676,162 +76836,42 @@ export namespace compute_preview { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/compute/v1/{+folder}/global/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['folder'], + pathParams: ['folder'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints extends StandardParameters { - /** - * The name of the network endpoint group where you are attaching network - * endpoints to. It should comply with RFC1035. - */ - networkEndpointGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalNetworkEndpointGroupsAttachEndpointsRequest; - } - export interface Params$Resource$Globalnetworkendpointgroups$Delete extends StandardParameters { - /** - * The name of the network endpoint group to delete. It should comply with - * RFC1035. - */ - networkEndpointGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - } - export interface Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints extends StandardParameters { - /** - * The name of the network endpoint group where you are removing network - * endpoints. It should comply with RFC1035. - */ - networkEndpointGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalNetworkEndpointGroupsDetachEndpointsRequest; - } - export interface Params$Resource$Globalnetworkendpointgroups$Get extends StandardParameters { - /** - * The name of the network endpoint group. It should comply with RFC1035. - */ - networkEndpointGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globalnetworkendpointgroups$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Globalfolderoperations$Get extends StandardParameters { /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Folder ID for this request. */ - requestId?: string; - + folder?: string; /** - * Request body metadata + * Name of the Operations resource to return. */ - requestBody?: Schema$NetworkEndpointGroup; + operation?: string; } - export interface Params$Resource$Globalnetworkendpointgroups$List extends StandardParameters { + export interface Params$Resource$Globalfolderoperations$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -75894,100 +76934,9 @@ export namespace compute_preview { */ filter?: string; /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. + * Folder ID for this request. */ - filter?: string; + folder?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -75996,11 +76945,6 @@ export namespace compute_preview { * `0` to `500`, inclusive. (Default: `500`) */ maxResults?: number; - /** - * The name of the network endpoint group from which you want to generate a - * list of included network endpoints. It should comply with RFC1035. - */ - networkEndpointGroup?: string; /** * Sorts list results by a certain order. By default, results * are returned in alphanumerical order based on the resource name. @@ -76021,23 +76965,16 @@ export namespace compute_preview { * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; } - export class Resource$Globaloperations { + export class Resource$Globalforwardingrules { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of all operations. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Deletes the specified GlobalForwardingRule resource. * @example * ```js * // Before running the sample: @@ -76061,7 +76998,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -76070,114 +77006,61 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOperations.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.globalForwardingRules.delete({ + * // Name of the ForwardingRule resource to delete. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -76193,56 +77076,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Globaloperations$Aggregatedlist, + delete( + params: Params$Resource$Globalforwardingrules$Delete, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Globaloperations$Aggregatedlist, + delete( + params?: Params$Resource$Globalforwardingrules$Delete, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Globaloperations$Aggregatedlist, + ): Promise>; + delete( + params: Params$Resource$Globalforwardingrules$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Globaloperations$Aggregatedlist, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Globaloperations$Aggregatedlist, - callback: BodyResponseCallback + delete( + params: Params$Resource$Globalforwardingrules$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + delete( + params: Params$Resource$Globalforwardingrules$Delete, + callback: BodyResponseCallback ): void; - aggregatedList( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Globaloperations$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$Aggregatedlist; + {}) as Params$Resource$Globalforwardingrules$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$Aggregatedlist; + params = {} as Params$Resource$Globalforwardingrules$Delete; options = {}; } @@ -76256,30 +77135,32 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/operations' + rootUrl + + '/compute/v1/projects/{project}/global/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'forwardingRule'], + pathParams: ['forwardingRule', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified Operations resource. + * Returns the specified GlobalForwardingRule resource. Gets a list of + * available forwarding rules by making a list() request. * @example * ```js * // Before running the sample: @@ -76303,6 +77184,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -76311,74 +77193,120 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOperations.delete({ - * // Name of the Operations resource to delete, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalForwardingRules.get({ + * // Name of the ForwardingRule resource to return. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * + * view: 'placeholder-value', * }); * console.log(res.data); - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - delete( - params: Params$Resource$Globaloperations$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Globaloperations$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globaloperations$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Globaloperations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Globaloperations$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Globaloperations$Delete - | BodyResponseCallback + * // Example response + * // { + * // "IPAddress": "my_IPAddress", + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], + * // "name": "my_name", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], + * // "subnetwork": "my_subnetwork", + * // "target": "my_target" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Globalforwardingrules$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Globalforwardingrules$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Globalforwardingrules$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Globalforwardingrules$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Globalforwardingrules$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Globalforwardingrules$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback + callback?: + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$Delete; + {}) as Params$Resource$Globalforwardingrules$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$Delete; + params = {} as Params$Resource$Globalforwardingrules$Get; options = {}; } @@ -76393,30 +77321,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/operations/{operation}' + '/compute/v1/projects/{project}/global/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'operation'], - pathParams: ['operation', 'project'], + requiredParams: ['project', 'forwardingRule'], + pathParams: ['forwardingRule', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the specified Operations resource. + * Creates a GlobalForwardingRule resource in the specified project using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -76440,7 +77369,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -76449,13 +77377,70 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOperations.get({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalForwardingRules.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "IPAddress": "my_IPAddress", + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], + * // "name": "my_name", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], + * // "subnetwork": "my_subnetwork", + * // "target": "my_target" + * // } + * }, * }); * console.log(res.data); * @@ -76464,6 +77449,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -76505,32 +77491,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Globaloperations$Get, + insert( + params: Params$Resource$Globalforwardingrules$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globaloperations$Get, + insert( + params?: Params$Resource$Globalforwardingrules$Insert, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Globaloperations$Get, + insert( + params: Params$Resource$Globalforwardingrules$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globaloperations$Get, + insert( + params: Params$Resource$Globalforwardingrules$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globaloperations$Get, + insert( + params: Params$Resource$Globalforwardingrules$Insert, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Globaloperations$Get + | Params$Resource$Globalforwardingrules$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -76545,12 +77531,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$Get; + {}) as Params$Resource$Globalforwardingrules$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$Get; + params = {} as Params$Resource$Globalforwardingrules$Insert; options = {}; } @@ -76564,17 +77550,16 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/operations/{operation}' + rootUrl + '/compute/v1/projects/{project}/global/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'operation'], - pathParams: ['operation', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -76588,8 +77573,8 @@ export namespace compute_preview { } /** - * Retrieves a list of Operation resources contained within the specified - * project. + * Retrieves a list of GlobalForwardingRule resources available to the + * specified project. * @example * ```js * // Before running the sample: @@ -76622,7 +77607,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOperations.list({ + * const res = await compute.globalForwardingRules.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -76734,52 +77719,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Globaloperations$List, + params: Params$Resource$Globalforwardingrules$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Globaloperations$List, + params?: Params$Resource$Globalforwardingrules$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Globaloperations$List, + params: Params$Resource$Globalforwardingrules$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globaloperations$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalforwardingrules$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globaloperations$List, - callback: BodyResponseCallback + params: Params$Resource$Globalforwardingrules$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Globaloperations$List - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$List; + {}) as Params$Resource$Globalforwardingrules$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$List; + params = {} as Params$Resource$Globalforwardingrules$List; options = {}; } @@ -76793,7 +77778,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/operations' + rootUrl + '/compute/v1/projects/{project}/global/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -76806,32 +77791,21 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Waits for the specified Operation resource to return as `DONE` - * or for the request to approach the 2 minute deadline, and retrieves the - * specified Operation resource. This method differs from the - * `GET` method in that it waits for no more than the default - * deadline (2 minutes) and then returns the current state of the operation, - * which might be `DONE` or still in progress. - * - * This method is called on a best-effort basis. Specifically: - * - * - * - In uncommon cases, when the server is overloaded, the request might - * return before the default deadline is reached, or might return after zero - * seconds. - * - If the default deadline is reached, there is no guarantee that the - * operation is actually done when the method returns. Be prepared to retry - * if the operation is not `DONE`. + * Updates the specified forwarding rule with the data included in the + * request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. Currently, you can only + * patch the network_tier field. * @example * ```js * // Before running the sample: @@ -76855,7 +77829,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -76864,13 +77837,72 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOperations.wait({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalForwardingRules.patch({ + * // Name of the ForwardingRule resource to patch. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "IPAddress": "my_IPAddress", + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], + * // "name": "my_name", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], + * // "subnetwork": "my_subnetwork", + * // "target": "my_target" + * // } + * }, * }); * console.log(res.data); * @@ -76879,6 +77911,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -76920,32 +77953,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Globaloperations$Wait, + patch( + params: Params$Resource$Globalforwardingrules$Patch, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Globaloperations$Wait, + patch( + params?: Params$Resource$Globalforwardingrules$Patch, options?: MethodOptions ): Promise>; - wait( - params: Params$Resource$Globaloperations$Wait, + patch( + params: Params$Resource$Globalforwardingrules$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Globaloperations$Wait, + patch( + params: Params$Resource$Globalforwardingrules$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Globaloperations$Wait, + patch( + params: Params$Resource$Globalforwardingrules$Patch, callback: BodyResponseCallback ): void; - wait(callback: BodyResponseCallback): void; - wait( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Globaloperations$Wait + | Params$Resource$Globalforwardingrules$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -76960,12 +77993,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$Wait; + {}) as Params$Resource$Globalforwardingrules$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$Wait; + params = {} as Params$Resource$Globalforwardingrules$Patch; options = {}; } @@ -76980,16 +78013,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/operations/{operation}/wait' + '/compute/v1/projects/{project}/global/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'operation'], - pathParams: ['operation', 'project'], + requiredParams: ['project', 'forwardingRule'], + pathParams: ['forwardingRule', 'project'], context: this.context, }; if (callback) { @@ -77001,255 +78034,11 @@ export namespace compute_preview { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Globaloperations$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Globaloperations$Delete extends StandardParameters { - /** - * Name of the Operations resource to delete, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globaloperations$Get extends StandardParameters { - /** - * Name of the Operations resource to return, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globaloperations$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globaloperations$Wait extends StandardParameters { - /** - * Name of the Operations resource to return, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - } - - export class Resource$Globalorganizationoperations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified Operations resource. + * Sets the labels on the specified resource. To learn more about labels, + * read the + * Labeling resources documentation. * @example * ```js * // Before running the sample: @@ -77281,14 +78070,57 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOrganizationOperations.delete({ - * // Name of the Operations resource to delete, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Parent ID for this request. - * parentId: 'placeholder-value', + * const res = await compute.globalForwardingRules.setLabels({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } * } * * main().catch(e => { @@ -77303,51 +78135,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Globalorganizationoperations$Delete, + setLabels( + params: Params$Resource$Globalforwardingrules$Setlabels, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globalorganizationoperations$Delete, + setLabels( + params?: Params$Resource$Globalforwardingrules$Setlabels, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globalorganizationoperations$Delete, + ): Promise>; + setLabels( + params: Params$Resource$Globalforwardingrules$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalorganizationoperations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Globalforwardingrules$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalorganizationoperations$Delete, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Globalforwardingrules$Setlabels, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Globalorganizationoperations$Delete - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback + callback?: + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalorganizationoperations$Delete; + {}) as Params$Resource$Globalforwardingrules$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalorganizationoperations$Delete; + params = {} as Params$Resource$Globalforwardingrules$Setlabels; options = {}; } @@ -77361,31 +78194,32 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/locations/global/operations/{operation}' + rootUrl + + '/compute/v1/projects/{project}/global/forwardingRules/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['operation'], - pathParams: ['operation'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the specified Operations resource. Gets a list of operations - * by making a `list()` request. + * Changes target URL for the GlobalForwardingRule resource. The new target + * should be of the same type as the old target. * @example * ```js * // Before running the sample: @@ -77409,7 +78243,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -77418,12 +78251,34 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOrganizationOperations.get({ - * // Name of the Operations resource to return. Parent is derived from this - * // field. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Parent ID for this request. Not used. Parent is derived from resource_id. - * parentId: 'placeholder-value', + * const res = await compute.globalForwardingRules.setTarget({ + * // Name of the ForwardingRule resource in which target is to be set. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "target": "my_target" + * // } + * }, * }); * console.log(res.data); * @@ -77432,6 +78287,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -77473,32 +78329,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Globalorganizationoperations$Get, + setTarget( + params: Params$Resource$Globalforwardingrules$Settarget, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globalorganizationoperations$Get, + setTarget( + params?: Params$Resource$Globalforwardingrules$Settarget, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Globalorganizationoperations$Get, + setTarget( + params: Params$Resource$Globalforwardingrules$Settarget, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalorganizationoperations$Get, + setTarget( + params: Params$Resource$Globalforwardingrules$Settarget, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalorganizationoperations$Get, + setTarget( + params: Params$Resource$Globalforwardingrules$Settarget, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + setTarget(callback: BodyResponseCallback): void; + setTarget( paramsOrCallback?: - | Params$Resource$Globalorganizationoperations$Get + | Params$Resource$Globalforwardingrules$Settarget | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -77513,12 +78369,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalorganizationoperations$Get; + {}) as Params$Resource$Globalforwardingrules$Settarget; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalorganizationoperations$Get; + params = {} as Params$Resource$Globalforwardingrules$Settarget; options = {}; } @@ -77532,16 +78388,17 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/locations/global/operations/{operation}' + rootUrl + + '/compute/v1/projects/{project}/global/forwardingRules/{forwardingRule}/setTarget' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['operation'], - pathParams: ['operation'], + requiredParams: ['project', 'forwardingRule'], + pathParams: ['forwardingRule', 'project'], context: this.context, }; if (callback) { @@ -77553,259 +78410,76 @@ export namespace compute_preview { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Globalforwardingrules$Delete extends StandardParameters { /** - * Retrieves a list of Operation resources contained within the specified - * organization. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * Name of the ForwardingRule resource to delete. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Do the magic - * const res = await compute.globalOrganizationOperations.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Parent ID for this request. - * parentId: 'placeholder-value', - * }); - * console.log(res.data); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * // Example response - * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} - * // } - * } + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Globalforwardingrules$Get extends StandardParameters { + /** + * Name of the ForwardingRule resource to return. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + */ + view?: string; + } + export interface Params$Resource$Globalforwardingrules$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * ``` + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - list( - params: Params$Resource$Globalorganizationoperations$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Globalorganizationoperations$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Globalorganizationoperations$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globalorganizationoperations$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globalorganizationoperations$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Globalorganizationoperations$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globalorganizationoperations$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globalorganizationoperations$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/compute/v1/locations/global/operations').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } + requestId?: string; - export interface Params$Resource$Globalorganizationoperations$Delete extends StandardParameters { - /** - * Name of the Operations resource to delete, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Parent ID for this request. - */ - parentId?: string; - } - export interface Params$Resource$Globalorganizationoperations$Get extends StandardParameters { - /** - * Name of the Operations resource to return. Parent is derived from this - * field. - */ - operation?: string; /** - * Parent ID for this request. Not used. Parent is derived from resource_id. + * Request body metadata */ - parentId?: string; + requestBody?: Schema$ForwardingRule; } - export interface Params$Resource$Globalorganizationoperations$List extends StandardParameters { + export interface Params$Resource$Globalforwardingrules$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -77896,19 +78570,96 @@ export namespace compute_preview { */ pageToken?: string; /** - * Parent ID for this request. + * Project ID for this request. */ - parentId?: string; + project?: string; + } + export interface Params$Resource$Globalforwardingrules$Patch extends StandardParameters { + /** + * Name of the ForwardingRule resource to patch. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ForwardingRule; } + export interface Params$Resource$Globalforwardingrules$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - export class Resource$Globalpublicdelegatedprefixes { + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Globalforwardingrules$Settarget extends StandardParameters { + /** + * Name of the ForwardingRule resource in which target is to be set. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TargetReference; + } + + export class Resource$Globalfrontendsettings { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified global PublicDelegatedPrefix. + * Gets the Global Frontend Billing Bundle Settings for a project. * @example * ```js * // Before running the sample: @@ -77932,6 +78683,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -77940,60 +78692,21 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.delete({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the PublicDelegatedPrefix resource to delete. - * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * const res = await compute.globalFrontendSettings.get({ + * // Required. Project ID for this request. + * project: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "bundleType": "my_bundleType", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "selfLink": "my_selfLink" * // } * } * @@ -78009,52 +78722,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Globalpublicdelegatedprefixes$Delete, + get( + params: Params$Resource$Globalfrontendsettings$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globalpublicdelegatedprefixes$Delete, + get( + params?: Params$Resource$Globalfrontendsettings$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globalpublicdelegatedprefixes$Delete, + ): Promise>; + get( + params: Params$Resource$Globalfrontendsettings$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalpublicdelegatedprefixes$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Globalfrontendsettings$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalpublicdelegatedprefixes$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Globalfrontendsettings$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$Delete - | BodyResponseCallback + | Params$Resource$Globalfrontendsettings$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$Delete; + {}) as Params$Resource$Globalfrontendsettings$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$Delete; + params = {} as Params$Resource$Globalfrontendsettings$Get; options = {}; } @@ -78069,30 +78784,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' + '/compute/v1/projects/{project}/global/globalFrontendSettings' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'publicDelegatedPrefix'], - pathParams: ['project', 'publicDelegatedPrefix'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified global PublicDelegatedPrefix resource. + * Updates the Global Frontend Billing Bundle Settings for a project. * @example * ```js * // Before running the sample: @@ -78116,7 +78831,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -78125,35 +78839,33 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.get({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the PublicDelegatedPrefix resource to return. - * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalFrontendSettings.patch({ + * // Required. Project ID for this request. + * project: 'placeholder-value', + * // An optional request ID to identify requests. + * requestId: 'placeholder-value', + * // Field mask to support patch. E.g., "type". + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bundleType": "my_bundleType", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "etag": "my_etag", + * // "id": "my_id", + * // "name": "my_name", + * // "selfLink": "my_selfLink" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "allocatablePrefixLength": 0, - * // "byoipApiVersion": "my_byoipApiVersion", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "enableEnhancedIpv4Allocation": false, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCidrRange": "my_ipCidrRange", - * // "ipv6AccessType": "my_ipv6AccessType", - * // "isLiveMigration": false, - * // "kind": "my_kind", - * // "mode": "my_mode", - * // "name": "my_name", - * // "parentPrefix": "my_parentPrefix", - * // "publicDelegatedSubPrefixs": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "status": "my_status" + * // "operation": {} * // } * } * @@ -78169,54 +78881,61 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Globalpublicdelegatedprefixes$Get, + patch( + params: Params$Resource$Globalfrontendsettings$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globalpublicdelegatedprefixes$Get, + patch( + params?: Params$Resource$Globalfrontendsettings$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Globalpublicdelegatedprefixes$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + patch( + params: Params$Resource$Globalfrontendsettings$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalpublicdelegatedprefixes$Get, + patch( + params: Params$Resource$Globalfrontendsettings$Patch, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalpublicdelegatedprefixes$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Globalfrontendsettings$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch( + callback: BodyResponseCallback + ): void; + patch( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$Get - | BodyResponseCallback + | Params$Resource$Globalfrontendsettings$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$Get; + {}) as Params$Resource$Globalfrontendsettings$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$Get; + params = {} as Params$Resource$Globalfrontendsettings$Patch; options = {}; } @@ -78231,31 +78950,65 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' + '/compute/v1/projects/{project}/global/globalFrontendSettings' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'publicDelegatedPrefix'], - pathParams: ['project', 'publicDelegatedPrefix'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Globalfrontendsettings$Get extends StandardParameters { /** - * Creates a global PublicDelegatedPrefix in the specified project using the - * parameters that are included in the request. + * Required. Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Globalfrontendsettings$Patch extends StandardParameters { + /** + * Required. Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. + */ + requestId?: string; + /** + * Field mask to support patch. E.g., "type". + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalFrontendSettings; + } + + export class Resource$Globalnetworkendpointgroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Attach a network endpoint to the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -78287,7 +79040,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.insert({ + * const res = await compute.globalNetworkEndpointGroups.attachNetworkEndpoints({ + * // The name of the network endpoint group where you are attaching network + * // endpoints to. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -78310,24 +79066,7 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "allocatablePrefixLength": 0, - * // "byoipApiVersion": "my_byoipApiVersion", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "enableEnhancedIpv4Allocation": false, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCidrRange": "my_ipCidrRange", - * // "ipv6AccessType": "my_ipv6AccessType", - * // "isLiveMigration": false, - * // "kind": "my_kind", - * // "mode": "my_mode", - * // "name": "my_name", - * // "parentPrefix": "my_parentPrefix", - * // "publicDelegatedSubPrefixs": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "status": "my_status" + * // "networkEndpoints": [] * // } * }, * }); @@ -78338,6 +79077,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -78379,32 +79119,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Globalpublicdelegatedprefixes$Insert, + attachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Globalpublicdelegatedprefixes$Insert, + attachNetworkEndpoints( + params?: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Globalpublicdelegatedprefixes$Insert, + attachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalpublicdelegatedprefixes$Insert, + attachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalpublicdelegatedprefixes$Insert, + attachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + attachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$Insert + | Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -78419,12 +79161,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$Insert; + {}) as Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$Insert; + params = + {} as Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints; options = {}; } @@ -78439,7 +79182,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/publicDelegatedPrefixes' + '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -78447,8 +79190,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { @@ -78462,7 +79205,8 @@ export namespace compute_preview { } /** - * Lists the global PublicDelegatedPrefixes for a project. + * Deletes the specified network endpoint group.Note that the NEG cannot be + * deleted if there are backend services referencing it. * @example * ```js * // Before running the sample: @@ -78486,7 +79230,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -78495,102 +79238,62 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.globalNetworkEndpointGroups.delete({ + * // The name of the network endpoint group to delete. It should comply with + * // RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -78606,56 +79309,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Globalpublicdelegatedprefixes$List, + delete( + params: Params$Resource$Globalnetworkendpointgroups$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Globalpublicdelegatedprefixes$List, + delete( + params?: Params$Resource$Globalnetworkendpointgroups$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Globalpublicdelegatedprefixes$List, + ): Promise>; + delete( + params: Params$Resource$Globalnetworkendpointgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globalpublicdelegatedprefixes$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globalpublicdelegatedprefixes$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Globalnetworkendpointgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Globalnetworkendpointgroups$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$List - | BodyResponseCallback + | Params$Resource$Globalnetworkendpointgroups$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$List; + {}) as Params$Resource$Globalnetworkendpointgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$List; + params = {} as Params$Resource$Globalnetworkendpointgroups$Delete; options = {}; } @@ -78670,33 +79369,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/publicDelegatedPrefixes' + '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified global PublicDelegatedPrefix resource with the data - * included in the request. This method supportsPATCH - * semantics and usesJSON merge - * patch format and processing rules. + * Detach the network endpoint from the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -78728,12 +79424,13 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.patch({ + * const res = await compute.globalNetworkEndpointGroups.detachNetworkEndpoints({ + * // The name of the network endpoint group where you are removing network + * // endpoints. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the PublicDelegatedPrefix resource to patch. - * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -78753,24 +79450,7 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "allocatablePrefixLength": 0, - * // "byoipApiVersion": "my_byoipApiVersion", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "enableEnhancedIpv4Allocation": false, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCidrRange": "my_ipCidrRange", - * // "ipv6AccessType": "my_ipv6AccessType", - * // "isLiveMigration": false, - * // "kind": "my_kind", - * // "mode": "my_mode", - * // "name": "my_name", - * // "parentPrefix": "my_parentPrefix", - * // "publicDelegatedSubPrefixs": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "status": "my_status" + * // "networkEndpoints": [] * // } * }, * }); @@ -78781,6 +79461,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -78822,32 +79503,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Globalpublicdelegatedprefixes$Patch, + detachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Globalpublicdelegatedprefixes$Patch, + detachNetworkEndpoints( + params?: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Globalpublicdelegatedprefixes$Patch, + detachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalpublicdelegatedprefixes$Patch, + detachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalpublicdelegatedprefixes$Patch, + detachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + detachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + detachNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$Patch + | Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -78862,12 +79545,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$Patch; + {}) as Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$Patch; + params = + {} as Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints; options = {}; } @@ -78882,16 +79566,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' + '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'publicDelegatedPrefix'], - pathParams: ['project', 'publicDelegatedPrefix'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { @@ -78903,210 +79587,9 @@ export namespace compute_preview { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Globalpublicdelegatedprefixes$Delete extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the PublicDelegatedPrefix resource to delete. - */ - publicDelegatedPrefix?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - } - export interface Params$Resource$Globalpublicdelegatedprefixes$Get extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the PublicDelegatedPrefix resource to return. - */ - publicDelegatedPrefix?: string; - } - export interface Params$Resource$Globalpublicdelegatedprefixes$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$PublicDelegatedPrefix; - } - export interface Params$Resource$Globalpublicdelegatedprefixes$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globalpublicdelegatedprefixes$Patch extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the PublicDelegatedPrefix resource to patch. - */ - publicDelegatedPrefix?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$PublicDelegatedPrefix; - } - - export class Resource$Globalvmextensionpolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves the list of all VM Extension Policy resources - * available to the specified project. - * - * To prevent failure, it's recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Returns the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -79139,325 +79622,37 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Name of the project scoping this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "etag": "my_etag", - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - aggregatedList( - params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, - options: StreamMethodOptions - ): Promise>; - aggregatedList( - params?: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, - callback: BodyResponseCallback - ): void; - aggregatedList( - callback: BodyResponseCallback - ): void; - aggregatedList( - paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Aggregatedlist - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/vmExtensionPolicies' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Purge scoped resources (zonal policies) from a global VM extension - * policy, and then delete the global VM extension policy. Purge of the scoped - * resources is a pre-condition of the global VM extension policy deletion. - * The deletion of the global VM extension policy happens after the purge - * rollout is done, so it's not a part of the LRO. It's an automatic process - * that triggers in the backend. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.globalVmExtensionPolicies.delete({ - * // Name of the global VM extension policy to purge scoped resources for. - * globalVmExtensionPolicy: 'placeholder-value', + * const res = await compute.globalNetworkEndpointGroups.get({ + * // The name of the network endpoint group. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "conflictBehavior": "my_conflictBehavior", - * // "name": "my_name", - * // "predefinedRolloutPlan": "my_predefinedRolloutPlan", - * // "retryUuid": "my_retryUuid" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "serviceClassId": "my_serviceClassId", + * // "size": 0, + * // "subnetwork": "my_subnetwork", * // "zone": "my_zone" * // } * } @@ -79474,210 +79669,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Globalvmextensionpolicies$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Globalvmextensionpolicies$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globalvmextensionpolicies$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Globalvmextensionpolicies$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Globalvmextensionpolicies$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'globalVmExtensionPolicy'], - pathParams: ['globalVmExtensionPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets details of a global VM extension policy. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.globalVmExtensionPolicies.get({ - * // Name of the GlobalVmExtensionPolicy resource to return. - * globalVmExtensionPolicy: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "extensionPolicies": {}, - * // "id": "my_id", - * // "instanceSelectors": [], - * // "kind": "my_kind", - * // "name": "my_name", - * // "priority": 0, - * // "rolloutOperation": {}, - * // "scopedResourceStatus": "my_scopedResourceStatus", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "updateTimestamp": "my_updateTimestamp" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ get( - params: Params$Resource$Globalvmextensionpolicies$Get, + params: Params$Resource$Globalnetworkendpointgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Globalvmextensionpolicies$Get, + params?: Params$Resource$Globalnetworkendpointgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Globalvmextensionpolicies$Get, + params: Params$Resource$Globalnetworkendpointgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Globalvmextensionpolicies$Get, + params: Params$Resource$Globalnetworkendpointgroups$Get, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Globalvmextensionpolicies$Get, - callback: BodyResponseCallback + params: Params$Resource$Globalnetworkendpointgroups$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Get - | BodyResponseCallback + | Params$Resource$Globalnetworkendpointgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Get; + {}) as Params$Resource$Globalnetworkendpointgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Get; + params = {} as Params$Resource$Globalnetworkendpointgroups$Get; options = {}; } @@ -79692,7 +79731,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' + '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -79700,22 +79739,37 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'globalVmExtensionPolicy'], - pathParams: ['globalVmExtensionPolicy', 'project'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new project level GlobalVmExtensionPolicy. + * Creates a network endpoint group in the specified project using the + * parameters that are included in the request. + * + * Note: Use the following APIs to manage network endpoint groups: + * + * - + * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity + * NEGs): zonal + * API + * - + * To manage NEGs with regional scope (such as regional internet NEGs, + * serverless NEGs, Private Service Connect NEGs): regional + * API + * - + * To manage NEGs with global scope (such as global internet NEGs):global + * API * @example * ```js * // Before running the sample: @@ -79747,7 +79801,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.insert({ + * const res = await compute.globalNetworkEndpointGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -79770,19 +79824,27 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, * // "description": "my_description", - * // "extensionPolicies": {}, * // "id": "my_id", - * // "instanceSelectors": [], * // "kind": "my_kind", * // "name": "my_name", - * // "priority": 0, - * // "rolloutOperation": {}, - * // "scopedResourceStatus": "my_scopedResourceStatus", + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "updateTimestamp": "my_updateTimestamp" + * // "serviceClassId": "my_serviceClassId", + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "zone": "my_zone" * // } * }, * }); @@ -79793,6 +79855,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -79835,31 +79898,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Globalvmextensionpolicies$Insert, + params: Params$Resource$Globalnetworkendpointgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Globalvmextensionpolicies$Insert, + params?: Params$Resource$Globalnetworkendpointgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Globalvmextensionpolicies$Insert, + params: Params$Resource$Globalnetworkendpointgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Globalvmextensionpolicies$Insert, + params: Params$Resource$Globalnetworkendpointgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Globalvmextensionpolicies$Insert, + params: Params$Resource$Globalnetworkendpointgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Insert + | Params$Resource$Globalnetworkendpointgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -79874,12 +79937,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Insert; + {}) as Params$Resource$Globalnetworkendpointgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Insert; + params = {} as Params$Resource$Globalnetworkendpointgroups$Insert; options = {}; } @@ -79894,7 +79957,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/vmExtensionPolicies' + '/compute/v1/projects/{project}/global/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -79917,7 +79980,8 @@ export namespace compute_preview { } /** - * Lists global VM extension policies. + * Retrieves the list of network endpoint groups that are located in the + * specified project. * @example * ```js * // Before running the sample: @@ -79950,7 +80014,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.list({ + * const res = await compute.globalNetworkEndpointGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -80040,13 +80104,11 @@ export namespace compute_preview { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -80064,56 +80126,53 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Globalvmextensionpolicies$List, + params: Params$Resource$Globalnetworkendpointgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Globalvmextensionpolicies$List, + params?: Params$Resource$Globalnetworkendpointgroups$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Globalvmextensionpolicies$List, + params: Params$Resource$Globalnetworkendpointgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globalvmextensionpolicies$List, + params: Params$Resource$Globalnetworkendpointgroups$List, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globalvmextensionpolicies$List, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Globalnetworkendpointgroups$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$List - | BodyResponseCallback + | Params$Resource$Globalnetworkendpointgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$List; + {}) as Params$Resource$Globalnetworkendpointgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$List; + params = {} as Params$Resource$Globalnetworkendpointgroups$List; options = {}; } @@ -80128,7 +80187,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/vmExtensionPolicies' + '/compute/v1/projects/{project}/global/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -80141,17 +80200,17 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a global VM extension policy. + * Lists the network endpoints in the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -80175,6 +80234,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -80183,80 +80243,104 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.update({ - * // Name of the global VM extension policy to update. - * globalVmExtensionPolicy: 'placeholder-value', + * const res = await compute.globalNetworkEndpointGroups.listNetworkEndpoints({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // The name of the network endpoint group from which you want to generate a + * // list of included network endpoints. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "extensionPolicies": {}, - * // "id": "my_id", - * // "instanceSelectors": [], - * // "kind": "my_kind", - * // "name": "my_name", - * // "priority": 0, - * // "rolloutOperation": {}, - * // "scopedResourceStatus": "my_scopedResourceStatus", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "updateTimestamp": "my_updateTimestamp" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} * // } * } * @@ -80272,52 +80356,62 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Globalvmextensionpolicies$Update, + listNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Globalvmextensionpolicies$Update, + listNetworkEndpoints( + params?: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Globalvmextensionpolicies$Update, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Globalvmextensionpolicies$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Globalvmextensionpolicies$Update, - callback: BodyResponseCallback + listNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + listNetworkEndpoints( + callback: BodyResponseCallback + ): void; + listNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Update - | BodyResponseCallback + | Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Update; + {}) as Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Update; + params = + {} as Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints; options = {}; } @@ -80332,144 +80426,96 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' + '/compute/v1/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'globalVmExtensionPolicy'], - pathParams: ['globalVmExtensionPolicy', 'project'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Globalvmextensionpolicies$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; + export interface Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints extends StandardParameters { /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. + * The name of the network endpoint group where you are attaching network + * endpoints to. It should comply with RFC1035. */ - includeAllScopes?: boolean; + networkEndpointGroup?: string; /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * Project ID for this request. */ - maxResults?: number; + project?: string; /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - orderBy?: string; + requestId?: string; + /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Request body metadata */ - pageToken?: string; + requestBody?: Schema$GlobalNetworkEndpointGroupsAttachEndpointsRequest; + } + export interface Params$Resource$Globalnetworkendpointgroups$Delete extends StandardParameters { /** - * Name of the project scoping this request. + * The name of the network endpoint group to delete. It should comply with + * RFC1035. + */ + networkEndpointGroup?: string; + /** + * Project ID for this request. */ project?: string; /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - serviceProjectNumber?: string; + requestId?: string; } - export interface Params$Resource$Globalvmextensionpolicies$Delete extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints extends StandardParameters { /** - * Name of the global VM extension policy to purge scoped resources for. + * The name of the network endpoint group where you are removing network + * endpoints. It should comply with RFC1035. */ - globalVmExtensionPolicy?: string; + networkEndpointGroup?: string; /** * Project ID for this request. */ @@ -80494,19 +80540,19 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput; + requestBody?: Schema$GlobalNetworkEndpointGroupsDetachEndpointsRequest; } - export interface Params$Resource$Globalvmextensionpolicies$Get extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$Get extends StandardParameters { /** - * Name of the GlobalVmExtensionPolicy resource to return. + * The name of the network endpoint group. It should comply with RFC1035. */ - globalVmExtensionPolicy?: string; + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Globalvmextensionpolicies$Insert extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -80531,9 +80577,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$GlobalVmExtensionPolicy; + requestBody?: Schema$NetworkEndpointGroup; } - export interface Params$Resource$Globalvmextensionpolicies$List extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -80628,47 +80674,118 @@ export namespace compute_preview { */ project?: string; } - export interface Params$Resource$Globalvmextensionpolicies$Update extends StandardParameters { - /** - * Name of the global VM extension policy to update. - */ - globalVmExtensionPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints extends StandardParameters { /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalVmExtensionPolicy; - } - - export class Resource$Hacontrollers { + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * The name of the network endpoint group from which you want to generate a + * list of included network endpoints. It should comply with RFC1035. + */ + networkEndpointGroup?: string; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + } + + export class Resource$Globaloperations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of all of the HaControllers in the specified - * project across all regions. + * Retrieves an aggregated list of all operations. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -80701,7 +80818,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.aggregatedList({ + * const res = await compute.globalOperations.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -80802,7 +80919,6 @@ export namespace compute_preview { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": {}, * // "kind": "my_kind", @@ -80826,56 +80942,55 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Hacontrollers$Aggregatedlist, + params: Params$Resource$Globaloperations$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Hacontrollers$Aggregatedlist, + params?: Params$Resource$Globaloperations$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise>; aggregatedList( - params: Params$Resource$Hacontrollers$Aggregatedlist, + params: Params$Resource$Globaloperations$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Hacontrollers$Aggregatedlist, + params: Params$Resource$Globaloperations$Aggregatedlist, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Hacontrollers$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Hacontrollers$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Globaloperations$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Aggregatedlist; + {}) as Params$Resource$Globaloperations$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Aggregatedlist; + params = {} as Params$Resource$Globaloperations$Aggregatedlist; options = {}; } @@ -80889,8 +81004,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/haControllers' + rootUrl + '/compute/v1/projects/{project}/aggregated/operations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -80903,17 +81017,17 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes an HaController in the specified project. + * Deletes the specified Operations resource. * @example * ```js * // Before running the sample: @@ -80945,57 +81059,15 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.delete({ - * // Force-deletes HA Controller when the Delete is stuck. Instance that is not - * // primary at the moment will also be deleted. Can only be used against the HA - * // Controller resource that is already being deleted. - * force: 'placeholder-value', - * // Name of the HaController resource to delete. - * haController: 'placeholder-value', + * const res = await compute.globalOperations.delete({ + * // Name of the Operations resource to delete, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * requestId: 'placeholder-value', * }); * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } * } * * main().catch(e => { @@ -81011,51 +81083,50 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Hacontrollers$Delete, + params: Params$Resource$Globaloperations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Hacontrollers$Delete, + params?: Params$Resource$Globaloperations$Delete, options?: MethodOptions - ): Promise>; + ): Promise>; delete( - params: Params$Resource$Hacontrollers$Delete, + params: Params$Resource$Globaloperations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Hacontrollers$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Hacontrollers$Delete, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$Delete, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; + delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Hacontrollers$Delete - | BodyResponseCallback + | Params$Resource$Globaloperations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback + callback?: BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Delete; + {}) as Params$Resource$Globaloperations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Delete; + params = {} as Params$Resource$Globaloperations$Delete; options = {}; } @@ -81070,7 +81141,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/haControllers/{haController}' + '/compute/v1/projects/{project}/global/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -81078,23 +81149,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'haController'], - pathParams: ['haController', 'project', 'region'], + requiredParams: ['project', 'operation'], + pathParams: ['operation', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Fails over a VM targeted by the specified HaController to the selected - * zone. + * Retrieves the specified Operations resource. * @example * ```js * // Before running the sample: @@ -81118,6 +81188,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -81126,26 +81197,13 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.failover({ - * // ID of the HaController resource to update. - * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalOperations.get({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "failoverToZone": "my_failoverToZone" - * // } - * }, * }); * console.log(res.data); * @@ -81154,6 +81212,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -81195,390 +81254,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - failover( - params: Params$Resource$Hacontrollers$Failover, - options: StreamMethodOptions - ): Promise>; - failover( - params?: Params$Resource$Hacontrollers$Failover, - options?: MethodOptions - ): Promise>; - failover( - params: Params$Resource$Hacontrollers$Failover, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - failover( - params: Params$Resource$Hacontrollers$Failover, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - failover( - params: Params$Resource$Hacontrollers$Failover, - callback: BodyResponseCallback - ): void; - failover(callback: BodyResponseCallback): void; - failover( - paramsOrCallback?: - | Params$Resource$Hacontrollers$Failover - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Failover; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Failover; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/haControllers/{haController}/failover' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'region', 'haController'], - pathParams: ['haController', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns all the details of a specific HaController. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.haControllers.get({ - * // Name of the HaController resource to return. - * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "backendServices": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "failoverInitiation": "my_failoverInitiation", - * // "id": "my_id", - * // "instanceName": "my_instanceName", - * // "kind": "my_kind", - * // "name": "my_name", - * // "networkingAutoConfiguration": {}, - * // "params": {}, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zoneConfigurations": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ get( - params: Params$Resource$Hacontrollers$Get, + params: Params$Resource$Globaloperations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Hacontrollers$Get, + params?: Params$Resource$Globaloperations$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Hacontrollers$Get, + params: Params$Resource$Globaloperations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Hacontrollers$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Hacontrollers$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Hacontrollers$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/haControllers/{haController}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'region', 'haController'], - pathParams: ['haController', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates HaController in the specified project. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.haControllers.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "backendServices": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "failoverInitiation": "my_failoverInitiation", - * // "id": "my_id", - * // "instanceName": "my_instanceName", - * // "kind": "my_kind", - * // "name": "my_name", - * // "networkingAutoConfiguration": {}, - * // "params": {}, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zoneConfigurations": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - insert( - params: Params$Resource$Hacontrollers$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Hacontrollers$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Hacontrollers$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Hacontrollers$Insert, + params: Params$Resource$Globaloperations$Get, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Hacontrollers$Insert, + get( + params: Params$Resource$Globaloperations$Get, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Hacontrollers$Insert + | Params$Resource$Globaloperations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -81593,12 +81294,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Insert; + {}) as Params$Resource$Globaloperations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Insert; + params = {} as Params$Resource$Globaloperations$Get; options = {}; } @@ -81613,16 +81314,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/haControllers' + '/compute/v1/projects/{project}/global/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'operation'], + pathParams: ['operation', 'project'], context: this.context, }; if (callback) { @@ -81636,7 +81337,8 @@ export namespace compute_preview { } /** - * Lists all HaControllers in the specified project in the specified region. + * Retrieves a list of Operation resources contained within the specified + * project. * @example * ```js * // Before running the sample: @@ -81669,7 +81371,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.list({ + * const res = await compute.globalOperations.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -81754,19 +81456,16 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": [], + * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -81784,52 +81483,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Hacontrollers$List, + params: Params$Resource$Globaloperations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Hacontrollers$List, + params?: Params$Resource$Globaloperations$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Hacontrollers$List, + params: Params$Resource$Globaloperations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Hacontrollers$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Hacontrollers$List, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Hacontrollers$List - | BodyResponseCallback + | Params$Resource$Globaloperations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$List; + {}) as Params$Resource$Globaloperations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$List; + params = {} as Params$Resource$Globaloperations$List; options = {}; } @@ -81843,8 +81542,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/haControllers' + rootUrl + '/compute/v1/projects/{project}/global/operations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -81852,22 +81550,37 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates HaController in the specified project. + * Waits for the specified Operation resource to return as `DONE` + * or for the request to approach the 2 minute deadline, and retrieves the + * specified Operation resource. This method differs from the + * `GET` method in that it waits for no more than the default + * deadline (2 minutes) and then returns the current state of the operation, + * which might be `DONE` or still in progress. + * + * This method is called on a best-effort basis. Specifically: + * + * + * - In uncommon cases, when the server is overloaded, the request might + * return before the default deadline is reached, or might return after zero + * seconds. + * - If the default deadline is reached, there is no guarantee that the + * operation is actually done when the method returns. Be prepared to retry + * if the operation is not `DONE`. * @example * ```js * // Before running the sample: @@ -81891,6 +81604,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -81899,43 +81613,13 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.patch({ - * // ID of the HaController resource to update. - * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalOperations.wait({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "backendServices": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "failoverInitiation": "my_failoverInitiation", - * // "id": "my_id", - * // "instanceName": "my_instanceName", - * // "kind": "my_kind", - * // "name": "my_name", - * // "networkingAutoConfiguration": {}, - * // "params": {}, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zoneConfigurations": {} - * // } - * }, * }); * console.log(res.data); * @@ -81944,6 +81628,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -81985,32 +81670,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Hacontrollers$Patch, + wait( + params: Params$Resource$Globaloperations$Wait, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Hacontrollers$Patch, + wait( + params?: Params$Resource$Globaloperations$Wait, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Hacontrollers$Patch, + wait( + params: Params$Resource$Globaloperations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Hacontrollers$Patch, + wait( + params: Params$Resource$Globaloperations$Wait, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Hacontrollers$Patch, + wait( + params: Params$Resource$Globaloperations$Wait, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + wait(callback: BodyResponseCallback): void; + wait( paramsOrCallback?: - | Params$Resource$Hacontrollers$Patch + | Params$Resource$Globaloperations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -82025,12 +81710,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Patch; + {}) as Params$Resource$Globaloperations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Patch; + params = {} as Params$Resource$Globaloperations$Wait; options = {}; } @@ -82045,16 +81730,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/haControllers/{haController}' + '/compute/v1/projects/{project}/global/operations/{operation}/wait' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'haController'], - pathParams: ['haController', 'project', 'region'], + requiredParams: ['project', 'operation'], + pathParams: ['operation', 'project'], context: this.context, }; if (callback) { @@ -82068,7 +81753,7 @@ export namespace compute_preview { } } - export interface Params$Resource$Hacontrollers$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Globaloperations$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -82178,93 +81863,29 @@ export namespace compute_preview { */ serviceProjectNumber?: string; } - export interface Params$Resource$Hacontrollers$Delete extends StandardParameters { - /** - * Force-deletes HA Controller when the Delete is stuck. Instance that is not - * primary at the moment will also be deleted. Can only be used against the HA - * Controller resource that is already being deleted. - */ - force?: boolean; - /** - * Name of the HaController resource to delete. - */ - haController?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - */ - requestId?: string; - } - export interface Params$Resource$Hacontrollers$Failover extends StandardParameters { + export interface Params$Resource$Globaloperations$Delete extends StandardParameters { /** - * ID of the HaController resource to update. + * Name of the Operations resource to delete, or its unique numeric + * identifier. */ - haController?: string; + operation?: string; /** * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HaControllersFailoverRequest; } - export interface Params$Resource$Hacontrollers$Get extends StandardParameters { - /** - * Name of the HaController resource to return. - */ - haController?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Globaloperations$Get extends StandardParameters { /** - * Name of the region for this request. + * Name of the Operations resource to return, or its unique numeric + * identifier. */ - region?: string; - } - export interface Params$Resource$Hacontrollers$Insert extends StandardParameters { + operation?: string; /** * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HaController; } - export interface Params$Resource$Hacontrollers$List extends StandardParameters { + export interface Params$Resource$Globaloperations$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -82358,53 +81979,27 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; } - export interface Params$Resource$Hacontrollers$Patch extends StandardParameters { + export interface Params$Resource$Globaloperations$Wait extends StandardParameters { /** - * ID of the HaController resource to update. + * Name of the Operations resource to return, or its unique numeric + * identifier. */ - haController?: string; + operation?: string; /** * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - */ - requestId?: string; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HaController; } - export class Resource$Healthchecks { + export class Resource$Globalorganizationoperations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the list of all HealthCheck resources, regional and global, - * available to the specified project. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Deletes the specified Operations resource. * @example * ```js * // Before running the sample: @@ -82428,7 +82023,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -82437,115 +82031,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Name of the project scoping this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * const res = await compute.globalOrganizationOperations.delete({ + * // Name of the Operations resource to delete, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Parent ID for this request. + * parentId: 'placeholder-value', * }); * console.log(res.data); - * - * // Example response - * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } * } * * main().catch(e => { @@ -82560,56 +82053,51 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, + delete( + params: Params$Resource$Globalorganizationoperations$Delete, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Healthchecks$Aggregatedlist, + delete( + params?: Params$Resource$Globalorganizationoperations$Delete, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, + ): Promise>; + delete( + params: Params$Resource$Globalorganizationoperations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, - callback: BodyResponseCallback + delete( + params: Params$Resource$Globalorganizationoperations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + delete( + params: Params$Resource$Globalorganizationoperations$Delete, + callback: BodyResponseCallback ): void; - aggregatedList( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Healthchecks$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Globalorganizationoperations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback + callback?: BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Aggregatedlist; + {}) as Params$Resource$Globalorganizationoperations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Aggregatedlist; + params = {} as Params$Resource$Globalorganizationoperations$Delete; options = {}; } @@ -82623,30 +82111,31 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/healthChecks' + rootUrl + '/compute/v1/locations/global/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['operation'], + pathParams: ['operation'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified HealthCheck resource. + * Retrieves the specified Operations resource. Gets a list of operations + * by making a `list()` request. * @example * ```js * // Before running the sample: @@ -82670,6 +82159,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -82678,26 +82168,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.delete({ - * // Name of the HealthCheck resource to delete. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * const res = await compute.globalOrganizationOperations.get({ + * // Name of the Operations resource to return. Parent is derived from this + * // field. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Parent ID for this request. Not used. Parent is derived from resource_id. + * parentId: 'placeholder-value', * }); * console.log(res.data); * @@ -82706,6 +82182,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -82747,32 +82224,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Healthchecks$Delete, + get( + params: Params$Resource$Globalorganizationoperations$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Healthchecks$Delete, + get( + params?: Params$Resource$Globalorganizationoperations$Get, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Healthchecks$Delete, + get( + params: Params$Resource$Globalorganizationoperations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Healthchecks$Delete, + get( + params: Params$Resource$Globalorganizationoperations$Get, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Healthchecks$Delete, + get( + params: Params$Resource$Globalorganizationoperations$Get, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Healthchecks$Delete + | Params$Resource$Globalorganizationoperations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -82787,12 +82264,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Delete; + {}) as Params$Resource$Globalorganizationoperations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Delete; + params = {} as Params$Resource$Globalorganizationoperations$Get; options = {}; } @@ -82806,17 +82283,16 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' + rootUrl + '/compute/v1/locations/global/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['operation'], + pathParams: ['operation'], context: this.context, }; if (callback) { @@ -82830,7 +82306,8 @@ export namespace compute_preview { } /** - * Returns the specified HealthCheck resource. + * Retrieves a list of Operation resources contained within the specified + * organization. * @example * ```js * // Before running the sample: @@ -82863,38 +82340,101 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.get({ - * // Name of the HealthCheck resource to return. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * const res = await compute.globalOrganizationOperations.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Parent ID for this request. + * parentId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, * // "id": "my_id", + * // "items": [], * // "kind": "my_kind", - * // "logConfig": {}, - * // "name": "my_name", - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "warning": {} * // } * } * @@ -82910,52 +82450,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Healthchecks$Get, + list( + params: Params$Resource$Globalorganizationoperations$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Healthchecks$Get, + list( + params?: Params$Resource$Globalorganizationoperations$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Healthchecks$Get, + ): Promise>; + list( + params: Params$Resource$Globalorganizationoperations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Healthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Globalorganizationoperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Healthchecks$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Globalorganizationoperations$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Healthchecks$Get - | BodyResponseCallback + | Params$Resource$Globalorganizationoperations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Healthchecks$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Globalorganizationoperations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Get; + params = {} as Params$Resource$Globalorganizationoperations$List; options = {}; } @@ -82968,33 +82509,157 @@ export namespace compute_preview { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/compute/v1/locations/global/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Globalorganizationoperations$Delete extends StandardParameters { /** - * Creates a HealthCheck resource in the specified project using the data - * included in the request. + * Name of the Operations resource to delete, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Parent ID for this request. + */ + parentId?: string; + } + export interface Params$Resource$Globalorganizationoperations$Get extends StandardParameters { + /** + * Name of the Operations resource to return. Parent is derived from this + * field. + */ + operation?: string; + /** + * Parent ID for this request. Not used. Parent is derived from resource_id. + */ + parentId?: string; + } + export interface Params$Resource$Globalorganizationoperations$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Parent ID for this request. + */ + parentId?: string; + } + + export class Resource$Globalpublicdelegatedprefixes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified global PublicDelegatedPrefix. * @example * ```js * // Before running the sample: @@ -83026,10 +82691,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.insert({ + * const res = await compute.globalPublicDelegatedPrefixes.delete({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the PublicDelegatedPrefix resource to delete. + * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -83044,34 +82711,6 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "logConfig": {}, - * // "name": "my_name", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 - * // } - * }, * }); * console.log(res.data); * @@ -83080,6 +82719,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -83121,32 +82761,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Healthchecks$Insert, + delete( + params: Params$Resource$Globalpublicdelegatedprefixes$Delete, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Healthchecks$Insert, + delete( + params?: Params$Resource$Globalpublicdelegatedprefixes$Delete, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Healthchecks$Insert, + delete( + params: Params$Resource$Globalpublicdelegatedprefixes$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Healthchecks$Insert, + delete( + params: Params$Resource$Globalpublicdelegatedprefixes$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Healthchecks$Insert, + delete( + params: Params$Resource$Globalpublicdelegatedprefixes$Delete, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Healthchecks$Insert + | Params$Resource$Globalpublicdelegatedprefixes$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83161,12 +82801,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Insert; + {}) as Params$Resource$Globalpublicdelegatedprefixes$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Insert; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$Delete; options = {}; } @@ -83180,16 +82820,17 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/healthChecks' + rootUrl + + '/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'publicDelegatedPrefix'], + pathParams: ['project', 'publicDelegatedPrefix'], context: this.context, }; if (callback) { @@ -83203,8 +82844,7 @@ export namespace compute_preview { } /** - * Retrieves the list of HealthCheck resources available to the specified - * project. + * Returns the specified global PublicDelegatedPrefix resource. * @example * ```js * // Before running the sample: @@ -83237,102 +82877,35 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.globalPublicDelegatedPrefixes.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the PublicDelegatedPrefix resource to return. + * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { + * // "allocatablePrefixLength": 0, + * // "byoipApiVersion": "my_byoipApiVersion", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "enableEnhancedIpv4Allocation": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "items": [], + * // "ipCidrRange": "my_ipCidrRange", + * // "ipv6AccessType": "my_ipv6AccessType", + * // "isLiveMigration": false, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "mode": "my_mode", + * // "name": "my_name", + * // "parentPrefix": "my_parentPrefix", + * // "publicDelegatedSubPrefixs": [], + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "status": "my_status" * // } * } * @@ -83348,53 +82921,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Healthchecks$List, + get( + params: Params$Resource$Globalpublicdelegatedprefixes$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Healthchecks$List, + get( + params?: Params$Resource$Globalpublicdelegatedprefixes$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Healthchecks$List, + ): Promise>; + get( + params: Params$Resource$Globalpublicdelegatedprefixes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Healthchecks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Globalpublicdelegatedprefixes$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Healthchecks$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Globalpublicdelegatedprefixes$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Healthchecks$List - | BodyResponseCallback + | Params$Resource$Globalpublicdelegatedprefixes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$List; + {}) as Params$Resource$Globalpublicdelegatedprefixes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$List; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$Get; options = {}; } @@ -83408,7 +82982,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/healthChecks' + rootUrl + + '/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -83416,25 +82991,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'publicDelegatedPrefix'], + pathParams: ['project', 'publicDelegatedPrefix'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HealthCheck resource in the specified project using the data - * included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Creates a global PublicDelegatedPrefix in the specified project using the + * parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -83466,9 +83039,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.patch({ - * // Name of the HealthCheck resource to patch. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalPublicDelegatedPrefixes.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -83491,27 +83062,24 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, + * // "allocatablePrefixLength": 0, + * // "byoipApiVersion": "my_byoipApiVersion", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "enableEnhancedIpv4Allocation": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "ipCidrRange": "my_ipCidrRange", + * // "ipv6AccessType": "my_ipv6AccessType", + * // "isLiveMigration": false, * // "kind": "my_kind", - * // "logConfig": {}, + * // "mode": "my_mode", * // "name": "my_name", + * // "parentPrefix": "my_parentPrefix", + * // "publicDelegatedSubPrefixs": [], * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "status": "my_status" * // } * }, * }); @@ -83522,6 +83090,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -83563,32 +83132,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Healthchecks$Patch, + insert( + params: Params$Resource$Globalpublicdelegatedprefixes$Insert, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Healthchecks$Patch, + insert( + params?: Params$Resource$Globalpublicdelegatedprefixes$Insert, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Healthchecks$Patch, + insert( + params: Params$Resource$Globalpublicdelegatedprefixes$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Healthchecks$Patch, + insert( + params: Params$Resource$Globalpublicdelegatedprefixes$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Healthchecks$Patch, + insert( + params: Params$Resource$Globalpublicdelegatedprefixes$Insert, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Healthchecks$Patch + | Params$Resource$Globalpublicdelegatedprefixes$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83603,12 +83172,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Patch; + {}) as Params$Resource$Globalpublicdelegatedprefixes$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Patch; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$Insert; options = {}; } @@ -83623,16 +83192,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/global/publicDelegatedPrefixes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -83646,7 +83215,7 @@ export namespace compute_preview { } /** - * Returns permissions that a caller has on the specified resource. + * Lists the global PublicDelegatedPrefixes for a project. * @example * ```js * // Before running the sample: @@ -83679,26 +83248,102 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.testIamPermissions({ + * const res = await compute.globalPublicDelegatedPrefixes.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -83714,56 +83359,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, + list( + params: Params$Resource$Globalpublicdelegatedprefixes$List, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Healthchecks$Testiampermissions, + list( + params?: Params$Resource$Globalpublicdelegatedprefixes$List, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, + ): Promise>; + list( + params: Params$Resource$Globalpublicdelegatedprefixes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, + list( + params: Params$Resource$Globalpublicdelegatedprefixes$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, - callback: BodyResponseCallback + list( + params: Params$Resource$Globalpublicdelegatedprefixes$List, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - testIamPermissions( + list( paramsOrCallback?: - | Params$Resource$Healthchecks$Testiampermissions - | BodyResponseCallback + | Params$Resource$Globalpublicdelegatedprefixes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Testiampermissions; + {}) as Params$Resource$Globalpublicdelegatedprefixes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Testiampermissions; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$List; options = {}; } @@ -83778,31 +83423,33 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/publicDelegatedPrefixes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HealthCheck resource in the specified project using the data - * included in the request. + * Patches the specified global PublicDelegatedPrefix resource with the data + * included in the request. This method supportsPATCH + * semantics and usesJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -83834,12 +83481,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.update({ - * // Name of the HealthCheck resource to update. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalPublicDelegatedPrefixes.patch({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the PublicDelegatedPrefix resource to patch. + * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -83859,27 +83506,24 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, + * // "allocatablePrefixLength": 0, + * // "byoipApiVersion": "my_byoipApiVersion", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "enableEnhancedIpv4Allocation": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "ipCidrRange": "my_ipCidrRange", + * // "ipv6AccessType": "my_ipv6AccessType", + * // "isLiveMigration": false, * // "kind": "my_kind", - * // "logConfig": {}, + * // "mode": "my_mode", * // "name": "my_name", + * // "parentPrefix": "my_parentPrefix", + * // "publicDelegatedSubPrefixs": [], * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "unhealthyThreshold": 0 + * // "status": "my_status" * // } * }, * }); @@ -83890,6 +83534,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -83931,32 +83576,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Healthchecks$Update, + patch( + params: Params$Resource$Globalpublicdelegatedprefixes$Patch, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Healthchecks$Update, + patch( + params?: Params$Resource$Globalpublicdelegatedprefixes$Patch, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Healthchecks$Update, + patch( + params: Params$Resource$Globalpublicdelegatedprefixes$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Healthchecks$Update, + patch( + params: Params$Resource$Globalpublicdelegatedprefixes$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Healthchecks$Update, + patch( + params: Params$Resource$Globalpublicdelegatedprefixes$Patch, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Healthchecks$Update + | Params$Resource$Globalpublicdelegatedprefixes$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83971,12 +83616,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Update; + {}) as Params$Resource$Globalpublicdelegatedprefixes$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Update; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$Patch; options = {}; } @@ -83991,16 +83636,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' + '/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['project', 'publicDelegatedPrefix'], + pathParams: ['project', 'publicDelegatedPrefix'], context: this.context, }; if (callback) { @@ -84014,125 +83659,15 @@ export namespace compute_preview { } } - export interface Params$Resource$Healthchecks$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; + export interface Params$Resource$Globalpublicdelegatedprefixes$Delete extends StandardParameters { /** - * Name of the project scoping this request. + * Project ID for this request. */ project?: string; /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Healthchecks$Delete extends StandardParameters { - /** - * Name of the HealthCheck resource to delete. - */ - healthCheck?: string; - /** - * Project ID for this request. + * Name of the PublicDelegatedPrefix resource to delete. */ - project?: string; + publicDelegatedPrefix?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -84150,17 +83685,17 @@ export namespace compute_preview { */ requestId?: string; } - export interface Params$Resource$Healthchecks$Get extends StandardParameters { - /** - * Name of the HealthCheck resource to return. - */ - healthCheck?: string; + export interface Params$Resource$Globalpublicdelegatedprefixes$Get extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name of the PublicDelegatedPrefix resource to return. + */ + publicDelegatedPrefix?: string; } - export interface Params$Resource$Healthchecks$Insert extends StandardParameters { + export interface Params$Resource$Globalpublicdelegatedprefixes$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -84185,9 +83720,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$PublicDelegatedPrefix; } - export interface Params$Resource$Healthchecks$List extends StandardParameters { + export interface Params$Resource$Globalpublicdelegatedprefixes$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -84282,61 +83817,15 @@ export namespace compute_preview { */ project?: string; } - export interface Params$Resource$Healthchecks$Patch extends StandardParameters { - /** - * Name of the HealthCheck resource to patch. - */ - healthCheck?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HealthCheck; - } - export interface Params$Resource$Healthchecks$Testiampermissions extends StandardParameters { + export interface Params$Resource$Globalpublicdelegatedprefixes$Patch extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Healthchecks$Update extends StandardParameters { - /** - * Name of the HealthCheck resource to update. - */ - healthCheck?: string; - /** - * Project ID for this request. + * Name of the PublicDelegatedPrefix resource to patch. */ - project?: string; + publicDelegatedPrefix?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -84357,17 +83846,21 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$PublicDelegatedPrefix; } - export class Resource$Hosts { + export class Resource$Globalvmextensionpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves information about the specified host. + * Retrieves the list of all VM Extension Policy resources + * available to the specified project. + * + * To prevent failure, it's recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -84400,360 +83893,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.hosts.get({ - * // The parent resource association for the Host. This field specifies the - * // hierarchical context (e.g., reservation, block, sub-block) when - * // accessing the host. For example, reservations/reservation_name, - * // reservations/reservation_name/reservationBlocks/reservation_block_name or - * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. - * association: 'placeholder-value', - * // The name of the host, formatted as RFC1035 or a resource ID - * // number. - * host: 'placeholder-value', - * // The project ID for this request. - * project: 'placeholder-value', - * // The name of the zone for this request, formatted as RFC1035. - * zone: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "aliasLinks": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - get( - params: Params$Resource$Hosts$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Hosts$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Hosts$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Hosts$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Hosts$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Hosts$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Hosts$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{association}/hosts/{host}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'association', 'host'], - pathParams: ['association', 'host', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Allows customers to get SBOM versions of a host. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.hosts.getVersion({ - * // The parent resource association for the Host. This field specifies the - * // hierarchical context (e.g., reservation, block, sub-block) when - * // accessing the host. - * association: 'placeholder-value', - * // The name of the host, formatted as RFC1035 or a resource ID - * // number. - * host: 'placeholder-value', - * // Project ID for this request. - * project: 'placeholder-value', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * requestId: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "sbomSelections": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - getVersion( - params: Params$Resource$Hosts$Getversion, - options: StreamMethodOptions - ): Promise>; - getVersion( - params?: Params$Resource$Hosts$Getversion, - options?: MethodOptions - ): Promise>; - getVersion( - params: Params$Resource$Hosts$Getversion, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getVersion( - params: Params$Resource$Hosts$Getversion, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getVersion( - params: Params$Resource$Hosts$Getversion, - callback: BodyResponseCallback - ): void; - getVersion(callback: BodyResponseCallback): void; - getVersion( - paramsOrCallback?: - | Params$Resource$Hosts$Getversion - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Getversion; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Hosts$Getversion; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{association}/hosts/{host}/getVersion' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'association', 'host'], - pathParams: ['association', 'host', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Retrieves a list of hosts. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.hosts.list({ - * // The parent resource association for the Host. This field specifies the - * // hierarchical context (e.g., reservation, block, sub-block) when - * // accessing the host. For example, reservations/reservation_name, - * // reservations/reservation_name/reservationBlocks/reservation_block_name or - * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. - * association: 'placeholder-value', + * const res = await compute.globalVmExtensionPolicies.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -84813,6 +83953,14 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -84835,10 +83983,12 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // The project ID for this request. - * project: 'placeholder-value', - * // The name of the zone for this request, formatted as RFC1035. - * zone: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * @@ -84846,7 +83996,7 @@ export namespace compute_preview { * // { * // "etag": "my_etag", * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", @@ -84867,52 +84017,61 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Hosts$List, + aggregatedList( + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Hosts$List, + aggregatedList( + params?: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Hosts$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Hosts$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Hosts$List, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Hosts$List - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Hosts$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hosts$List; + params = {} as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; options = {}; } @@ -84927,7 +84086,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/{association}/hosts' + '/compute/v1/projects/{project}/aggregated/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -84935,192 +84094,29 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'association'], - pathParams: ['association', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Hosts$Get extends StandardParameters { - /** - * The parent resource association for the Host. This field specifies the - * hierarchical context (e.g., reservation, block, sub-block) when - * accessing the host. For example, reservations/reservation_name, - * reservations/reservation_name/reservationBlocks/reservation_block_name or - * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. - */ - association?: string; - /** - * The name of the host, formatted as RFC1035 or a resource ID - * number. - */ - host?: string; - /** - * The project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request, formatted as RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Hosts$Getversion extends StandardParameters { - /** - * The parent resource association for the Host. This field specifies the - * hierarchical context (e.g., reservation, block, sub-block) when - * accessing the host. - */ - association?: string; - /** - * The name of the host, formatted as RFC1035 or a resource ID - * number. - */ - host?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - */ - requestId?: string; - /** - * Name of the zone for this request. Zone name should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HostsGetVersionRequest; - } - export interface Params$Resource$Hosts$List extends StandardParameters { - /** - * The parent resource association for the Host. This field specifies the - * hierarchical context (e.g., reservation, block, sub-block) when - * accessing the host. For example, reservations/reservation_name, - * reservations/reservation_name/reservationBlocks/reservation_block_name or - * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. - */ - association?: string; - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * The project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request, formatted as RFC1035. - */ - zone?: string; - } - - export class Resource$Httphealthchecks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified HttpHealthCheck resource. + * Purge scoped resources (zonal policies) from a global VM extension + * policy, and then delete the global VM extension policy. Purge of the scoped + * resources is a pre-condition of the global VM extension policy deletion. + * The deletion of the global VM extension policy happens after the purge + * rollout is done, so it's not a part of the LRO. It's an automatic process + * that triggers in the backend. * @example * ```js * // Before running the sample: @@ -85152,9 +84148,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.delete({ - * // Name of the HttpHealthCheck resource to delete. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.delete({ + * // Name of the global VM extension policy to purge scoped resources for. + * globalVmExtensionPolicy: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -85172,6 +84168,17 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "conflictBehavior": "my_conflictBehavior", + * // "name": "my_name", + * // "predefinedRolloutPlan": "my_predefinedRolloutPlan", + * // "retryUuid": "my_retryUuid" + * // } + * }, * }); * console.log(res.data); * @@ -85180,6 +84187,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -85222,31 +84230,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Httphealthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Httphealthchecks$Delete, + params?: Params$Resource$Globalvmextensionpolicies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Httphealthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Httphealthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Httphealthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Delete + | Params$Resource$Globalvmextensionpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -85261,12 +84269,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Delete; + {}) as Params$Resource$Globalvmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Delete; + params = {} as Params$Resource$Globalvmextensionpolicies$Delete; options = {}; } @@ -85281,16 +84289,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { @@ -85304,7 +84312,7 @@ export namespace compute_preview { } /** - * Returns the specified HttpHealthCheck resource. + * Gets details of a global VM extension policy. * @example * ```js * // Before running the sample: @@ -85337,9 +84345,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.get({ - * // Name of the HttpHealthCheck resource to return. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.get({ + * // Name of the GlobalVmExtensionPolicy resource to return. + * globalVmExtensionPolicy: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -85348,19 +84357,19 @@ export namespace compute_preview { * * // Example response * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -85377,52 +84386,53 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Httphealthchecks$Get, + params: Params$Resource$Globalvmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Httphealthchecks$Get, + params?: Params$Resource$Globalvmextensionpolicies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Httphealthchecks$Get, + params: Params$Resource$Globalvmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httphealthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httphealthchecks$Get, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Get - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Get; + {}) as Params$Resource$Globalvmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Get; + params = {} as Params$Resource$Globalvmextensionpolicies$Get; options = {}; } @@ -85437,7 +84447,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -85445,23 +84455,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HttpHealthCheck resource in the specified project using the data - * included in the request. + * Retrieves details of a specific VM extension. * @example * ```js * // Before running the sample: @@ -85485,6 +84494,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -85493,7 +84503,158 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.insert({ + * const res = await compute.globalVmExtensionPolicies.getVmExtension({ + * // Required. Name of the VM extension for this request. + * extensionName: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "versions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getVmExtension( + params: Params$Resource$Globalvmextensionpolicies$Getvmextension, + options: StreamMethodOptions + ): Promise>; + getVmExtension( + params?: Params$Resource$Globalvmextensionpolicies$Getvmextension, + options?: MethodOptions + ): Promise>; + getVmExtension( + params: Params$Resource$Globalvmextensionpolicies$Getvmextension, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVmExtension( + params: Params$Resource$Globalvmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVmExtension( + params: Params$Resource$Globalvmextensionpolicies$Getvmextension, + callback: BodyResponseCallback + ): void; + getVmExtension( + callback: BodyResponseCallback + ): void; + getVmExtension( + paramsOrCallback?: + | Params$Resource$Globalvmextensionpolicies$Getvmextension + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globalvmextensionpolicies$Getvmextension; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globalvmextensionpolicies$Getvmextension; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/vmExtensions/{extensionName}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'extensionName'], + pathParams: ['extensionName', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new project level GlobalVmExtensionPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.globalVmExtensionPolicies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -85516,19 +84677,19 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -85539,6 +84700,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -85581,31 +84743,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Httphealthchecks$Insert, + params?: Params$Resource$Globalvmextensionpolicies$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Insert + | Params$Resource$Globalvmextensionpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -85620,12 +84782,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Insert; + {}) as Params$Resource$Globalvmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Insert; + params = {} as Params$Resource$Globalvmextensionpolicies$Insert; options = {}; } @@ -85639,7 +84801,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/httpHealthChecks' + rootUrl + + '/compute/v1/projects/{project}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -85662,8 +84825,7 @@ export namespace compute_preview { } /** - * Retrieves the list of HttpHealthCheck resources available to the specified - * project. + * Lists global VM extension policies. * @example * ```js * // Before running the sample: @@ -85696,7 +84858,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.list({ + * const res = await compute.globalVmExtensionPolicies.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -85786,11 +84948,13 @@ export namespace compute_preview { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -85808,52 +84972,56 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Httphealthchecks$List, + params: Params$Resource$Globalvmextensionpolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Httphealthchecks$List, + params?: Params$Resource$Globalvmextensionpolicies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Httphealthchecks$List, + params: Params$Resource$Globalvmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httphealthchecks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httphealthchecks$List, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Httphealthchecks$List - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$List; + {}) as Params$Resource$Globalvmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$List; + params = {} as Params$Resource$Globalvmextensionpolicies$List; options = {}; } @@ -85867,7 +85035,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/httpHealthChecks' + rootUrl + + '/compute/v1/projects/{project}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -85880,20 +85049,18 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HttpHealthCheck resource in the specified project using the data - * included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Lists all VM extensions within a specific zone for a project. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -85917,6 +85084,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -85925,80 +85093,104 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.patch({ - * // Name of the HttpHealthCheck resource to patch. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.globalVmExtensionPolicies.listVmExtensions({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", - * // "selfLink": "my_selfLink", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 - * // } - * }, + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Required. Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -86014,207 +85206,58 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Httphealthchecks$Patch, + listVmExtensions( + params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Httphealthchecks$Patch, + listVmExtensions( + params?: Params$Resource$Globalvmextensionpolicies$Listvmextensions, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Httphealthchecks$Patch, + ): Promise>; + listVmExtensions( + params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Httphealthchecks$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Httphealthchecks$Patch, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + listVmExtensions( + callback: BodyResponseCallback + ): void; + listVmExtensions( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns permissions that a caller has on the specified resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.httpHealthChecks.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Httphealthchecks$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Httphealthchecks$Testiampermissions - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$Listvmextensions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Testiampermissions; + {}) as Params$Resource$Globalvmextensionpolicies$Listvmextensions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Testiampermissions; + params = + {} as Params$Resource$Globalvmextensionpolicies$Listvmextensions; options = {}; } @@ -86228,32 +85271,32 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{resource}/testIamPermissions' + rootUrl + '/compute/v1/projects/{project}/global/vmExtensions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Updates a HttpHealthCheck resource in the specified project using the data - * included in the request. + * Updates a global VM extension policy. * @example * ```js * // Before running the sample: @@ -86285,9 +85328,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.update({ - * // Name of the HttpHealthCheck resource to update. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.update({ + * // Name of the global VM extension policy to update. + * globalVmExtensionPolicy: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -86310,19 +85353,19 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -86333,6 +85376,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -86375,31 +85419,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ update( - params: Params$Resource$Httphealthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; update( - params?: Params$Resource$Httphealthchecks$Update, + params?: Params$Resource$Globalvmextensionpolicies$Update, options?: MethodOptions ): Promise>; update( - params: Params$Resource$Httphealthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Httphealthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Httphealthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, callback: BodyResponseCallback ): void; update(callback: BodyResponseCallback): void; update( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Update + | Params$Resource$Globalvmextensionpolicies$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -86414,12 +85458,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Update; + {}) as Params$Resource$Globalvmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Update; + params = {} as Params$Resource$Globalvmextensionpolicies$Update; options = {}; } @@ -86434,16 +85478,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/v1/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { @@ -86457,11 +85501,121 @@ export namespace compute_preview { } } - export interface Params$Resource$Httphealthchecks$Delete extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Aggregatedlist extends StandardParameters { /** - * Name of the HttpHealthCheck resource to delete. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - httpHealthCheck?: string; + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Globalvmextensionpolicies$Delete extends StandardParameters { + /** + * Name of the global VM extension policy to purge scoped resources for. + */ + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ @@ -86482,18 +85636,33 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput; } - export interface Params$Resource$Httphealthchecks$Get extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Get extends StandardParameters { /** - * Name of the HttpHealthCheck resource to return. + * Name of the GlobalVmExtensionPolicy resource to return. */ - httpHealthCheck?: string; + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Httphealthchecks$Insert extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Getvmextension extends StandardParameters { + /** + * Required. Name of the VM extension for this request. + */ + extensionName?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Globalvmextensionpolicies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -86518,9 +85687,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$HttpHealthCheck; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export interface Params$Resource$Httphealthchecks$List extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -86615,57 +85784,106 @@ export namespace compute_preview { */ project?: string; } - export interface Params$Resource$Httphealthchecks$Patch extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Listvmextensions extends StandardParameters { /** - * Name of the HttpHealthCheck resource to patch. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - httpHealthCheck?: string; + filter?: string; /** - * Project ID for this request. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - project?: string; + maxResults?: number; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestId?: string; - + orderBy?: string; /** - * Request body metadata + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - requestBody?: Schema$HttpHealthCheck; - } - export interface Params$Resource$Httphealthchecks$Testiampermissions extends StandardParameters { + pageToken?: string; /** - * Project ID for this request. + * Required. Project ID for this request. */ project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Httphealthchecks$Update extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Update extends StandardParameters { /** - * Name of the HttpHealthCheck resource to update. + * Name of the global VM extension policy to update. */ - httpHealthCheck?: string; + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ @@ -86690,17 +85908,18 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$HttpHealthCheck; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export class Resource$Httpshealthchecks { + export class Resource$Hacontrollers { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified HttpsHealthCheck resource. + * Retrieves an aggregated list of all of the HaControllers in the specified + * project across all regions. * @example * ```js * // Before running the sample: @@ -86724,6 +85943,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -86732,60 +85952,115 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.delete({ - * // Name of the HttpsHealthCheck resource to delete. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.haControllers.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -86801,52 +86076,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Httpshealthchecks$Delete, + aggregatedList( + params: Params$Resource$Hacontrollers$Aggregatedlist, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Httpshealthchecks$Delete, + aggregatedList( + params?: Params$Resource$Hacontrollers$Aggregatedlist, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Httpshealthchecks$Delete, + ): Promise>; + aggregatedList( + params: Params$Resource$Hacontrollers$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Httpshealthchecks$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Hacontrollers$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Httpshealthchecks$Delete, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Hacontrollers$Aggregatedlist, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Delete - | BodyResponseCallback + | Params$Resource$Hacontrollers$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Delete; + {}) as Params$Resource$Hacontrollers$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Delete; + params = {} as Params$Resource$Hacontrollers$Aggregatedlist; options = {}; } @@ -86861,30 +86141,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/v1/projects/{project}/aggregated/haControllers' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified HttpsHealthCheck resource. + * Deletes an HaController in the specified project. * @example * ```js * // Before running the sample: @@ -86908,7 +86188,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -86917,30 +86196,57 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.get({ - * // Name of the HttpsHealthCheck resource to return. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.haControllers.delete({ + * // Force-deletes HA Controller when the Delete is stuck. Instance that is not + * // primary at the moment will also be deleted. Can only be used against the HA + * // Controller resource that is already being deleted. + * force: 'placeholder-value', + * // Name of the HaController resource to delete. + * haController: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "checkIntervalSec": 0, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -86956,53 +86262,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Httpshealthchecks$Get, + delete( + params: Params$Resource$Hacontrollers$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Httpshealthchecks$Get, + delete( + params?: Params$Resource$Hacontrollers$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Httpshealthchecks$Get, + ): Promise>; + delete( + params: Params$Resource$Hacontrollers$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Httpshealthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Hacontrollers$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Httpshealthchecks$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Hacontrollers$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Get - | BodyResponseCallback + | Params$Resource$Hacontrollers$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Get; + {}) as Params$Resource$Hacontrollers$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Get; + params = {} as Params$Resource$Hacontrollers$Delete; options = {}; } @@ -87017,31 +86322,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/v1/projects/{project}/regions/{region}/haControllers/{haController}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'region', 'haController'], + pathParams: ['haController', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HttpsHealthCheck resource in the specified project using the data - * included in the request. + * Fails over a VM targeted by the specified HaController to the selected + * zone. * @example * ```js * // Before running the sample: @@ -87073,42 +86378,24 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.insert({ + * const res = await compute.haControllers.failover({ + * // ID of the HaController resource to update. + * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", - * // "selfLink": "my_selfLink", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "failoverToZone": "my_failoverToZone" * // } * }, * }); @@ -87119,6 +86406,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -87160,32 +86448,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Httpshealthchecks$Insert, + failover( + params: Params$Resource$Hacontrollers$Failover, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Httpshealthchecks$Insert, + failover( + params?: Params$Resource$Hacontrollers$Failover, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Httpshealthchecks$Insert, + failover( + params: Params$Resource$Hacontrollers$Failover, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Httpshealthchecks$Insert, + failover( + params: Params$Resource$Hacontrollers$Failover, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Httpshealthchecks$Insert, + failover( + params: Params$Resource$Hacontrollers$Failover, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + failover(callback: BodyResponseCallback): void; + failover( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Insert + | Params$Resource$Hacontrollers$Failover | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -87200,12 +86488,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Insert; + {}) as Params$Resource$Hacontrollers$Failover; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Insert; + params = {} as Params$Resource$Hacontrollers$Failover; options = {}; } @@ -87220,7 +86508,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks' + '/compute/v1/projects/{project}/regions/{region}/haControllers/{haController}/failover' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -87228,8 +86516,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region', 'haController'], + pathParams: ['haController', 'project', 'region'], context: this.context, }; if (callback) { @@ -87243,8 +86531,7 @@ export namespace compute_preview { } /** - * Retrieves the list of HttpsHealthCheck resources available to the specified - * project. + * Returns all the details of a specific HaController. * @example * ```js * // Before running the sample: @@ -87277,102 +86564,35 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.haControllers.get({ + * // Name of the HaController resource to return. + * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "backendServices": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "failoverInitiation": "my_failoverInitiation", * // "id": "my_id", - * // "items": [], + * // "instanceName": "my_instanceName", * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "networkingAutoConfiguration": {}, + * // "params": {}, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zoneConfigurations": {} * // } * } * @@ -87388,54 +86608,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Httpshealthchecks$List, + get( + params: Params$Resource$Hacontrollers$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Httpshealthchecks$List, + get( + params?: Params$Resource$Hacontrollers$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Httpshealthchecks$List, + ): Promise>; + get( + params: Params$Resource$Hacontrollers$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Httpshealthchecks$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Hacontrollers$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Httpshealthchecks$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Hacontrollers$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$List - | BodyResponseCallback + | Params$Resource$Hacontrollers$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$List; + {}) as Params$Resource$Hacontrollers$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$List; + params = {} as Params$Resource$Hacontrollers$Get; options = {}; } @@ -87450,7 +86669,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks' + '/compute/v1/projects/{project}/regions/{region}/haControllers/{haController}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -87458,25 +86677,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region', 'haController'], + pathParams: ['haController', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HttpsHealthCheck resource in the specified project using the data - * included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Creates HaController in the specified project. * @example * ```js * // Before running the sample: @@ -87508,44 +86724,37 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.patch({ - * // Name of the HttpsHealthCheck resource to patch. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.haControllers.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, + * // "backendServices": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "failoverInitiation": "my_failoverInitiation", * // "id": "my_id", + * // "instanceName": "my_instanceName", * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "networkingAutoConfiguration": {}, + * // "params": {}, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zoneConfigurations": {} * // } * }, * }); @@ -87556,6 +86765,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -87597,32 +86807,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Httpshealthchecks$Patch, + insert( + params: Params$Resource$Hacontrollers$Insert, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Httpshealthchecks$Patch, + insert( + params?: Params$Resource$Hacontrollers$Insert, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Httpshealthchecks$Patch, + insert( + params: Params$Resource$Hacontrollers$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Httpshealthchecks$Patch, + insert( + params: Params$Resource$Hacontrollers$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Httpshealthchecks$Patch, + insert( + params: Params$Resource$Hacontrollers$Insert, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Patch + | Params$Resource$Hacontrollers$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -87637,12 +86847,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Patch; + {}) as Params$Resource$Hacontrollers$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Patch; + params = {} as Params$Resource$Hacontrollers$Insert; options = {}; } @@ -87657,16 +86867,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/v1/projects/{project}/regions/{region}/haControllers' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -87680,7 +86890,7 @@ export namespace compute_preview { } /** - * Returns permissions that a caller has on the specified resource. + * Lists all HaControllers in the specified project in the specified region. * @example * ```js * // Before running the sample: @@ -87713,26 +86923,105 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.testIamPermissions({ + * const res = await compute.haControllers.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -87748,56 +87037,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + list( + params: Params$Resource$Hacontrollers$List, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Httpshealthchecks$Testiampermissions, + list( + params?: Params$Resource$Hacontrollers$List, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + ): Promise>; + list( + params: Params$Resource$Hacontrollers$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, - callback: BodyResponseCallback + list( + params: Params$Resource$Hacontrollers$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + list( + params: Params$Resource$Hacontrollers$List, + callback: BodyResponseCallback ): void; - testIamPermissions( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Testiampermissions - | BodyResponseCallback + | Params$Resource$Hacontrollers$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Testiampermissions; + {}) as Params$Resource$Hacontrollers$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Testiampermissions; + params = {} as Params$Resource$Hacontrollers$List; options = {}; } @@ -87812,31 +87098,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/haControllers' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HttpsHealthCheck resource in the specified project using the data - * included in the request. + * Updates HaController in the specified project. * @example * ```js * // Before running the sample: @@ -87868,44 +87153,41 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.update({ - * // Name of the HttpsHealthCheck resource to update. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.haControllers.patch({ + * // ID of the HaController resource to update. + * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). * requestId: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, + * // "backendServices": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "failoverInitiation": "my_failoverInitiation", * // "id": "my_id", + * // "instanceName": "my_instanceName", * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "networkingAutoConfiguration": {}, + * // "params": {}, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zoneConfigurations": {} * // } * }, * }); @@ -87916,6 +87198,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -87957,32 +87240,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Httpshealthchecks$Update, + patch( + params: Params$Resource$Hacontrollers$Patch, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Httpshealthchecks$Update, + patch( + params?: Params$Resource$Hacontrollers$Patch, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Httpshealthchecks$Update, + patch( + params: Params$Resource$Hacontrollers$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Httpshealthchecks$Update, + patch( + params: Params$Resource$Hacontrollers$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Httpshealthchecks$Update, + patch( + params: Params$Resource$Hacontrollers$Patch, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Update + | Params$Resource$Hacontrollers$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -87997,12 +87280,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Update; + {}) as Params$Resource$Hacontrollers$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Update; + params = {} as Params$Resource$Hacontrollers$Patch; options = {}; } @@ -88017,16 +87300,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/v1/projects/{project}/regions/{region}/haControllers/{haController}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'region', 'haController'], + pathParams: ['haController', 'project', 'region'], context: this.context, }; if (callback) { @@ -88040,70 +87323,203 @@ export namespace compute_preview { } } - export interface Params$Resource$Httpshealthchecks$Delete extends StandardParameters { + export interface Params$Resource$Hacontrollers$Aggregatedlist extends StandardParameters { /** - * Name of the HttpsHealthCheck resource to delete. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - httpsHealthCheck?: string; + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Hacontrollers$Delete extends StandardParameters { + /** + * Force-deletes HA Controller when the Delete is stuck. Instance that is not + * primary at the moment will also be deleted. Can only be used against the HA + * Controller resource that is already being deleted. + */ + force?: boolean; + /** + * Name of the HaController resource to delete. + */ + haController?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). */ requestId?: string; } - export interface Params$Resource$Httpshealthchecks$Get extends StandardParameters { + export interface Params$Resource$Hacontrollers$Failover extends StandardParameters { /** - * Name of the HttpsHealthCheck resource to return. + * ID of the HaController resource to update. */ - httpsHealthCheck?: string; + haController?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HaControllersFailoverRequest; + } + export interface Params$Resource$Hacontrollers$Get extends StandardParameters { + /** + * Name of the HaController resource to return. + */ + haController?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; } - export interface Params$Resource$Httpshealthchecks$Insert extends StandardParameters { + export interface Params$Resource$Hacontrollers$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). */ requestId?: string; /** * Request body metadata */ - requestBody?: Schema$HttpsHealthCheck; + requestBody?: Schema$HaController; } - export interface Params$Resource$Httpshealthchecks$List extends StandardParameters { + export interface Params$Resource$Hacontrollers$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -88197,94 +87613,53 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; - } - export interface Params$Resource$Httpshealthchecks$Patch extends StandardParameters { - /** - * Name of the HttpsHealthCheck resource to patch. - */ - httpsHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Name of the region for this request. */ - requestId?: string; - + region?: string; + } + export interface Params$Resource$Hacontrollers$Patch extends StandardParameters { /** - * Request body metadata + * ID of the HaController resource to update. */ - requestBody?: Schema$HttpsHealthCheck; - } - export interface Params$Resource$Httpshealthchecks$Testiampermissions extends StandardParameters { + haController?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Httpshealthchecks$Update extends StandardParameters { - /** - * Name of the HttpsHealthCheck resource to update. - */ - httpsHealthCheck?: string; - /** - * Project ID for this request. + * Name of the region for this request. */ - project?: string; + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). */ requestId?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$HttpsHealthCheck; + requestBody?: Schema$HaController; } - export class Resource$Imagefamilyviews { + export class Resource$Healthchecks { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Returns the latest image that is part of an image family, is not - * deprecated and is rolled out in the specified zone. + * Retrieves the list of all HealthCheck resources, regional and global, + * available to the specified project. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -88317,20 +87692,114 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.imageFamilyViews.get({ - * // Name of the image family to search for. - * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. + * const res = await compute.healthChecks.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "image": {} + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -88346,53 +87815,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Imagefamilyviews$Get, + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Imagefamilyviews$Get, + aggregatedList( + params?: Params$Resource$Healthchecks$Aggregatedlist, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Imagefamilyviews$Get, + ): Promise>; + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Imagefamilyviews$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Imagefamilyviews$Get, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Imagefamilyviews$Get - | BodyResponseCallback + | Params$Resource$Healthchecks$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Imagefamilyviews$Get; + {}) as Params$Resource$Healthchecks$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Imagefamilyviews$Get; + params = {} as Params$Resource$Healthchecks$Aggregatedlist; options = {}; } @@ -88406,8 +87878,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/imageFamilyViews/{family}' + rootUrl + '/compute/v1/projects/{project}/aggregated/healthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -88415,44 +87886,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'family'], - pathParams: ['family', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Imagefamilyviews$Get extends StandardParameters { - /** - * Name of the image family to search for. - */ - family?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - - export class Resource$Images { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified image. + * Deletes the specified HealthCheck resource. * @example * ```js * // Before running the sample: @@ -88484,9 +87933,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.delete({ - * // Name of the image resource to delete. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.delete({ + * // Name of the HealthCheck resource to delete. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -88512,6 +87961,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -88554,31 +88004,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Images$Delete, + params: Params$Resource$Healthchecks$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Images$Delete, + params?: Params$Resource$Healthchecks$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Images$Delete, + params: Params$Resource$Healthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Images$Delete, + params: Params$Resource$Healthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Images$Delete, + params: Params$Resource$Healthchecks$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Images$Delete + | Params$Resource$Healthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -88592,12 +88042,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Healthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Delete; + params = {} as Params$Resource$Healthchecks$Delete; options = {}; } @@ -88611,7 +88062,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/images/{image}' + rootUrl + + '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -88619,8 +88071,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -88634,9 +88086,7 @@ export namespace compute_preview { } /** - * Sets the deprecation status of an image. - * - * If an empty request body is given, clears the deprecation status instead. + * Returns the specified HealthCheck resource. * @example * ```js * // Before running the sample: @@ -88660,6 +88110,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -88668,72 +88119,38 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.deprecate({ - * // Image name. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.get({ + * // Name of the HealthCheck resource to return. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "deleted": "my_deleted", - * // "deprecated": "my_deprecated", - * // "obsolete": "my_obsolete", - * // "replacement": "my_replacement", - * // "state": "my_state" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, + * // "healthyThreshold": 0, + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, + * // "timeoutSec": 0, + * // "type": "my_type", + * // "unhealthyThreshold": 0 * // } * } * @@ -88749,51 +88166,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deprecate( - params: Params$Resource$Images$Deprecate, + get( + params: Params$Resource$Healthchecks$Get, options: StreamMethodOptions ): Promise>; - deprecate( - params?: Params$Resource$Images$Deprecate, + get( + params?: Params$Resource$Healthchecks$Get, options?: MethodOptions - ): Promise>; - deprecate( - params: Params$Resource$Images$Deprecate, + ): Promise>; + get( + params: Params$Resource$Healthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deprecate( - params: Params$Resource$Images$Deprecate, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Healthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - deprecate( - params: Params$Resource$Images$Deprecate, - callback: BodyResponseCallback + get( + params: Params$Resource$Healthchecks$Get, + callback: BodyResponseCallback ): void; - deprecate(callback: BodyResponseCallback): void; - deprecate( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Images$Deprecate - | BodyResponseCallback + | Params$Resource$Healthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Deprecate; + let params = (paramsOrCallback || {}) as Params$Resource$Healthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Deprecate; + params = {} as Params$Resource$Healthchecks$Get; options = {}; } @@ -88808,30 +88226,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/images/{image}/deprecate' + '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified image. + * Creates a HealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -88855,7 +88274,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -88864,586 +88282,67 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.get({ - * // Name of the image resource to return. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, + * // "healthyThreshold": 0, + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, + * // "id": "my_id", + * // "kind": "my_kind", + * // "logConfig": {}, + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, + * // "timeoutSec": 0, + * // "type": "my_type", + * // "unhealthyThreshold": 0 + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], - * // "id": "my_id", - * // "imageEncryptionKey": {}, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - get( - params: Params$Resource$Images$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Images$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Images$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Images$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Images$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Images$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Images$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/compute/v1/projects/{project}/global/images/{image}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the latest image that is part of an image family and is not - * deprecated. For more information on image families, seePublic - * image families documentation. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.images.getFromFamily({ - * // Name of the image family to search for. - * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The image project that the image belongs to. For example, to get a CentOS - * // image, specify centos-cloud as the image project. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", - * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, - * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], - * // "id": "my_id", - * // "imageEncryptionKey": {}, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - getFromFamily( - params: Params$Resource$Images$Getfromfamily, - options: StreamMethodOptions - ): Promise>; - getFromFamily( - params?: Params$Resource$Images$Getfromfamily, - options?: MethodOptions - ): Promise>; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, - callback: BodyResponseCallback - ): void; - getFromFamily(callback: BodyResponseCallback): void; - getFromFamily( - paramsOrCallback?: - | Params$Resource$Images$Getfromfamily - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Images$Getfromfamily; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Images$Getfromfamily; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/images/family/{family}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'family'], - pathParams: ['family', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.images.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Images$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Images$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Images$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Images$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/images/{resource}/getIamPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates an image in the specified project using the data included - * in the request. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.images.insert({ - * // Force image creation if true. - * forceCreate: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", - * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, - * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], - * // "id": "my_id", - * // "imageEncryptionKey": {}, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", * // "insertTime": "my_insertTime", * // "instancesBulkInsertOperationMetadata": {}, @@ -89480,31 +88379,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Images$Insert, + params: Params$Resource$Healthchecks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Images$Insert, + params?: Params$Resource$Healthchecks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Images$Insert, + params: Params$Resource$Healthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Images$Insert, + params: Params$Resource$Healthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Images$Insert, + params: Params$Resource$Healthchecks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Images$Insert + | Params$Resource$Healthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -89518,12 +88417,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Insert; + let params = (paramsOrCallback || + {}) as Params$Resource$Healthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Insert; + params = {} as Params$Resource$Healthchecks$Insert; options = {}; } @@ -89537,7 +88437,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/images' + rootUrl + '/compute/v1/projects/{project}/global/healthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -89560,13 +88460,8 @@ export namespace compute_preview { } /** - * Retrieves the list of custom images - * available to the specified project. Custom images are images you - * create that belong to your project. This method does not - * get any images that belong to other projects, including publicly-available - * images, like Debian 8. If you want to get a list of publicly-available - * images, use this method to make a request to the respective image project, - * such as debian-cloud or windows-cloud. + * Retrieves the list of HealthCheck resources available to the specified + * project. * @example * ```js * // Before running the sample: @@ -89599,7 +88494,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.list({ + * const res = await compute.healthChecks.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -89711,50 +88606,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Images$List, + params: Params$Resource$Healthchecks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Images$List, + params?: Params$Resource$Healthchecks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Images$List, + params: Params$Resource$Healthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Images$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Images$List, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Images$List - | BodyResponseCallback + | Params$Resource$Healthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Healthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$List; + params = {} as Params$Resource$Healthchecks$List; options = {}; } @@ -89768,7 +88665,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/images' + rootUrl + '/compute/v1/projects/{project}/global/healthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -89781,19 +88678,20 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified image with the data included in the request. - * Only the following fields can be modified: family, description, - * deprecation status. + * Updates a HealthCheck resource in the specified project using the data + * included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -89825,9 +88723,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.patch({ - * // Name of the image resource to patch. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.patch({ + * // Name of the HealthCheck resource to patch. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -89850,41 +88748,27 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, + * // "healthyThreshold": 0, + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", - * // "imageEncryptionKey": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], + * // "logConfig": {}, * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, + * // "timeoutSec": 0, + * // "type": "my_type", + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -89895,6 +88779,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -89937,31 +88822,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Images$Patch, + params: Params$Resource$Healthchecks$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Images$Patch, + params?: Params$Resource$Healthchecks$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Images$Patch, + params: Params$Resource$Healthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Images$Patch, + params: Params$Resource$Healthchecks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Images$Patch, + params: Params$Resource$Healthchecks$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Images$Patch + | Params$Resource$Healthchecks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -89975,12 +88860,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Patch; + let params = (paramsOrCallback || + {}) as Params$Resource$Healthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Patch; + params = {} as Params$Resource$Healthchecks$Patch; options = {}; } @@ -89994,7 +88880,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/images/{image}' + rootUrl + + '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '2026-10-01-preview', @@ -90002,8 +88889,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -90017,8 +88904,7 @@ export namespace compute_preview { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -90042,6 +88928,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -90050,7 +88937,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.setIamPolicy({ + * const res = await compute.healthChecks.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -90061,9 +88948,7 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "permissions": [] * // } * }, * }); @@ -90071,10 +88956,7 @@ export namespace compute_preview { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -90090,52 +88972,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, + testIamPermissions( + params: Params$Resource$Healthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Images$Setiampolicy, + testIamPermissions( + params?: Params$Resource$Healthchecks$Testiampermissions, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Healthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Healthchecks$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Healthchecks$Testiampermissions, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Images$Setiampolicy - | BodyResponseCallback + | Params$Resource$Healthchecks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Images$Setiampolicy; + {}) as Params$Resource$Healthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Setiampolicy; + params = {} as Params$Resource$Healthchecks$Testiampermissions; options = {}; } @@ -90150,7 +89036,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/images/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/healthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -90163,18 +89049,18 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on an image. To learn more about labels, read theLabeling - * Resources documentation. + * Updates a HealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -90206,19 +89092,52 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.setLabels({ + * const res = await compute.healthChecks.update({ + * // Name of the HealthCheck resource to update. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, + * // "healthyThreshold": 0, + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, + * // "id": "my_id", + * // "kind": "my_kind", + * // "logConfig": {}, + * // "name": "my_name", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, + * // "timeoutSec": 0, + * // "type": "my_type", + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -90229,6 +89148,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -90270,32 +89190,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Images$Setlabels, + update( + params: Params$Resource$Healthchecks$Update, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Images$Setlabels, + update( + params?: Params$Resource$Healthchecks$Update, options?: MethodOptions ): Promise>; - setLabels( - params: Params$Resource$Images$Setlabels, + update( + params: Params$Resource$Healthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Images$Setlabels, + update( + params: Params$Resource$Healthchecks$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Images$Setlabels, + update( + params: Params$Resource$Healthchecks$Update, callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Images$Setlabels + | Params$Resource$Healthchecks$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -90309,12 +89229,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Setlabels; + let params = (paramsOrCallback || + {}) as Params$Resource$Healthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Setlabels; + params = {} as Params$Resource$Healthchecks$Update; options = {}; } @@ -90329,16 +89250,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/images/{resource}/setLabels' + '/compute/v1/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PUT', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -90350,194 +89271,123 @@ export namespace compute_preview { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Healthchecks$Aggregatedlist extends StandardParameters { /** - * Returns permissions that a caller has on the specified resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * // Do the magic - * const res = await compute.images.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` * - * // Example response - * // { - * // "permissions": [] - * // } - * } + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` * - * ``` + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Images$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Images$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Images$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Images$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/images/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Images$Delete extends StandardParameters { + filter?: string; /** - * Name of the image resource to delete. + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. */ - image?: string; + includeAllScopes?: boolean; /** - * Project ID for this request. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - project?: string; + maxResults?: number; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestId?: string; + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; } - export interface Params$Resource$Images$Deprecate extends StandardParameters { + export interface Params$Resource$Healthchecks$Delete extends StandardParameters { /** - * Image name. + * Name of the HealthCheck resource to delete. */ - image?: string; + healthCheck?: string; /** * Project ID for this request. */ @@ -90558,52 +89408,18 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$DeprecationStatus; - } - export interface Params$Resource$Images$Get extends StandardParameters { - /** - * Name of the image resource to return. - */ - image?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Images$Getfromfamily extends StandardParameters { - /** - * Name of the image family to search for. - */ - family?: string; - /** - * The image project that the image belongs to. For example, to get a CentOS - * image, specify centos-cloud as the image project. - */ - project?: string; } - export interface Params$Resource$Images$Getiampolicy extends StandardParameters { + export interface Params$Resource$Healthchecks$Get extends StandardParameters { /** - * Requested IAM Policy version. + * Name of the HealthCheck resource to return. */ - optionsRequestedPolicyVersion?: number; + healthCheck?: string; /** * Project ID for this request. */ project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; } - export interface Params$Resource$Images$Insert extends StandardParameters { - /** - * Force image creation if true. - */ - forceCreate?: boolean; + export interface Params$Resource$Healthchecks$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -90628,9 +89444,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$Image; + requestBody?: Schema$HealthCheck; } - export interface Params$Resource$Images$List extends StandardParameters { + export interface Params$Resource$Healthchecks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -90725,11 +89541,11 @@ export namespace compute_preview { */ project?: string; } - export interface Params$Resource$Images$Patch extends StandardParameters { + export interface Params$Resource$Healthchecks$Patch extends StandardParameters { /** - * Name of the image resource to patch. + * Name of the HealthCheck resource to patch. */ - image?: string; + healthCheck?: string; /** * Project ID for this request. */ @@ -90754,9 +89570,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$Image; + requestBody?: Schema$HealthCheck; } - export interface Params$Resource$Images$Setiampolicy extends StandardParameters { + export interface Params$Resource$Healthchecks$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -90769,48 +89585,48 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$GlobalSetPolicyRequest; + requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Images$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - + export interface Params$Resource$Healthchecks$Update extends StandardParameters { /** - * Request body metadata + * Name of the HealthCheck resource to update. */ - requestBody?: Schema$GlobalSetLabelsRequest; - } - export interface Params$Resource$Images$Testiampermissions extends StandardParameters { + healthCheck?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - resource?: string; + requestId?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$HealthCheck; } - export class Resource$Imageviews { + export class Resource$Hosts { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Returns the specified global ImageView resource, with a regional - * context. + * Retrieves information about the specified host. * @example * ```js * // Before running the sample: @@ -90843,20 +89659,36 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.imageViews.get({ - * // Required. Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Required. Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the image resource to return. - * resourceId: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.hosts.get({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. For example, reservations/reservation_name, + * // reservations/reservation_name/reservationBlocks/reservation_block_name or + * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + * association: 'placeholder-value', + * // The name of the host, formatted as RFC1035 or a resource ID + * // number. + * host: 'placeholder-value', + * // The project ID for this request. + * project: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "image": {} + * // "aliasLinks": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zone": "my_zone" * // } * } * @@ -90873,50 +89705,50 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Imageviews$Get, + params: Params$Resource$Hosts$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Imageviews$Get, + params?: Params$Resource$Hosts$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Imageviews$Get, + params: Params$Resource$Hosts$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Imageviews$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Hosts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Imageviews$Get, - callback: BodyResponseCallback + params: Params$Resource$Hosts$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Imageviews$Get - | BodyResponseCallback + | Params$Resource$Hosts$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Imageviews$Get; + params = {} as Params$Resource$Hosts$Get; options = {}; } @@ -90931,7 +89763,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/imageViews/{resourceId}' + '/compute/v1/projects/{project}/zones/{zone}/{association}/hosts/{host}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -90939,23 +89771,210 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'resourceId'], - pathParams: ['project', 'region', 'resourceId'], + requiredParams: ['project', 'zone', 'association', 'host'], + pathParams: ['association', 'host', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns a list of global ImageView resources, with a regional - * context. + * Allows customers to get SBOM versions of a host. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.hosts.getVersion({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. + * association: 'placeholder-value', + * // The name of the host, formatted as RFC1035 or a resource ID + * // number. + * host: 'placeholder-value', + * // Project ID for this request. + * project: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * requestId: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "sbomSelections": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getVersion( + params: Params$Resource$Hosts$Getversion, + options: StreamMethodOptions + ): Promise>; + getVersion( + params?: Params$Resource$Hosts$Getversion, + options?: MethodOptions + ): Promise>; + getVersion( + params: Params$Resource$Hosts$Getversion, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVersion( + params: Params$Resource$Hosts$Getversion, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVersion( + params: Params$Resource$Hosts$Getversion, + callback: BodyResponseCallback + ): void; + getVersion(callback: BodyResponseCallback): void; + getVersion( + paramsOrCallback?: + | Params$Resource$Hosts$Getversion + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Getversion; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Hosts$Getversion; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/{association}/hosts/{host}/getVersion' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'association', 'host'], + pathParams: ['association', 'host', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of hosts. * @example * ```js * // Before running the sample: @@ -90988,7 +90007,13 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.imageViews.list({ + * const res = await compute.hosts.list({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. For example, reservations/reservation_name, + * // reservations/reservation_name/reservationBlocks/reservation_block_name or + * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + * association: 'placeholder-value', * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -91070,11 +90095,10 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Required. Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Required. Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The project ID for this request. + * project: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -91104,52 +90128,51 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Imageviews$List, + params: Params$Resource$Hosts$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Imageviews$List, + params?: Params$Resource$Hosts$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Imageviews$List, + params: Params$Resource$Hosts$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Imageviews$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Hosts$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Imageviews$List, - callback: BodyResponseCallback + params: Params$Resource$Hosts$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Imageviews$List - | BodyResponseCallback + | Params$Resource$Hosts$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$List; + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Imageviews$List; + params = {} as Params$Resource$Hosts$List; options = {}; } @@ -91164,7 +90187,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/imageViews' + '/compute/v1/projects/{project}/zones/{zone}/{association}/hosts' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -91172,36 +90195,85 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'zone', 'association'], + pathParams: ['association', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Imageviews$Get extends StandardParameters { + export interface Params$Resource$Hosts$Get extends StandardParameters { /** - * Required. Project ID for this request. + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. For example, reservations/reservation_name, + * reservations/reservation_name/reservationBlocks/reservation_block_name or + * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + */ + association?: string; + /** + * The name of the host, formatted as RFC1035 or a resource ID + * number. + */ + host?: string; + /** + * The project ID for this request. */ project?: string; /** - * Required. Name of the region for this request. + * The name of the zone for this request, formatted as RFC1035. */ - region?: string; + zone?: string; + } + export interface Params$Resource$Hosts$Getversion extends StandardParameters { /** - * Name of the image resource to return. + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. */ - resourceId?: string; + association?: string; + /** + * The name of the host, formatted as RFC1035 or a resource ID + * number. + */ + host?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + */ + requestId?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HostsGetVersionRequest; } - export interface Params$Resource$Imageviews$List extends StandardParameters { + export interface Params$Resource$Hosts$List extends StandardParameters { + /** + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. For example, reservations/reservation_name, + * reservations/reservation_name/reservationBlocks/reservation_block_name or + * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + */ + association?: string; /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -91292,230 +90364,23 @@ export namespace compute_preview { */ pageToken?: string; /** - * Required. Project ID for this request. + * The project ID for this request. */ project?: string; /** - * Required. Name of the region for this request. + * The name of the zone for this request, formatted as RFC1035. */ - region?: string; + zone?: string; } - export class Resource$Instancegroupmanagerresizerequests { + export class Resource$Httphealthchecks { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Cancels the specified resize request and removes it from the queue. - * Cancelled resize request does no longer wait for the resources to be - * provisioned. Cancel is only possible for requests that are accepted in the - * queue. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.cancel({ - * // The name of the managed instance group. - * // The name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the resize request to cancel. - * // The name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, - options: StreamMethodOptions - ): Promise>; - cancel( - params?: Params$Resource$Instancegroupmanagerresizerequests$Cancel, - options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, - callback: BodyResponseCallback - ): void; - cancel(callback: BodyResponseCallback): void; - cancel( - paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Cancel - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Cancel; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Cancel; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes the specified, inactive resize request. Requests that are still - * active cannot be deleted. Deleting request does not delete instances that - * were provisioned previously. + * Deletes the specified HttpHealthCheck resource. * @example * ```js * // Before running the sample: @@ -91547,10 +90412,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.delete({ - * // The name of the managed instance group. - * // The name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpHealthChecks.delete({ + * // Name of the HttpHealthCheck resource to delete. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -91568,12 +90432,6 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the resize request to delete. - * // The name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -91582,6 +90440,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -91624,31 +90483,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, + params: Params$Resource$Httphealthchecks$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instancegroupmanagerresizerequests$Delete, + params?: Params$Resource$Httphealthchecks$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, + params: Params$Resource$Httphealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, + params: Params$Resource$Httphealthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, + params: Params$Resource$Httphealthchecks$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Delete + | Params$Resource$Httphealthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -91663,13 +90522,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Delete; + {}) as Params$Resource$Httphealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Delete; + params = {} as Params$Resource$Httphealthchecks$Delete; options = {}; } @@ -91684,7 +90542,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -91692,18 +90550,8 @@ export namespace compute_preview { options ), params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -91717,7 +90565,7 @@ export namespace compute_preview { } /** - * Returns all of the details about the specified resize request. + * Returns the specified HttpHealthCheck resource. * @example * ```js * // Before running the sample: @@ -91750,38 +90598,30 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.get({ - * // The name of the managed instance group. - * // Name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpHealthChecks.get({ + * // Name of the HttpHealthCheck resource to return. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the resize request. - * // Name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // Name of the href="/compute/docs/regions-zones/#available"\>zone - * // scoping this request. Name should conform to RFC1035. - * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "instances": [], * // "kind": "my_kind", * // "name": "my_name", - * // "region": "my_region", - * // "requestedRunDuration": {}, - * // "resizeBy": 0, + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zone": "my_zone" + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * } * @@ -91798,60 +90638,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, + params: Params$Resource$Httphealthchecks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instancegroupmanagerresizerequests$Get, + params?: Params$Resource$Httphealthchecks$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, + params: Params$Resource$Httphealthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$Get, + callback: BodyResponseCallback ): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Get - | BodyResponseCallback + | Params$Resource$Httphealthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Get; + {}) as Params$Resource$Httphealthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagerresizerequests$Get; + params = {} as Params$Resource$Httphealthchecks$Get; options = {}; } @@ -91866,7 +90698,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -91874,35 +90706,23 @@ export namespace compute_preview { options ), params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a new resize request that starts provisioning VMs immediately - * or queues VM creation. + * Creates a HttpHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -91934,11 +90754,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.insert({ - * // The name of the managed instance group to which the resize request will - * // be added. - * // Name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpHealthChecks.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -91956,29 +90772,24 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located and where the resize request will be created. - * // Name should conform to RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "instances": [], * // "kind": "my_kind", * // "name": "my_name", - * // "region": "my_region", - * // "requestedRunDuration": {}, - * // "resizeBy": 0, + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zone": "my_zone" + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -91989,6 +90800,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -92031,31 +90843,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instancegroupmanagerresizerequests$Insert, + params?: Params$Resource$Httphealthchecks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + params: Params$Resource$Httphealthchecks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Insert + | Params$Resource$Httphealthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -92070,13 +90882,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Insert; + {}) as Params$Resource$Httphealthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Insert; + params = {} as Params$Resource$Httphealthchecks$Insert; options = {}; } @@ -92090,8 +90901,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + rootUrl + '/compute/v1/projects/{project}/global/httpHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -92099,8 +90909,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -92114,8 +90924,8 @@ export namespace compute_preview { } /** - * Retrieves a list of resize requests that are contained in the - * managed instance group. + * Retrieves the list of HttpHealthCheck resources available to the specified + * project. * @example * ```js * // Before running the sample: @@ -92148,7 +90958,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.list({ + * const res = await compute.httpHealthChecks.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -92208,8 +91018,6 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // The name of the managed instance group. The name should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -92235,9 +91043,6 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -92265,60 +91070,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, + params: Params$Resource$Httphealthchecks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Instancegroupmanagerresizerequests$List, + params?: Params$Resource$Httphealthchecks$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, + params: Params$Resource$Httphealthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$List - | BodyResponseCallback + | Params$Resource$Httphealthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$List; + {}) as Params$Resource$Httphealthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagerresizerequests$List; + params = {} as Params$Resource$Httphealthchecks$List; options = {}; } @@ -92332,8 +91129,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + rootUrl + '/compute/v1/projects/{project}/global/httpHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -92341,284 +91137,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Instancegroupmanagerresizerequests$Cancel extends StandardParameters { - /** - * The name of the managed instance group. - * The name should conform to RFC1035 or be a resource ID. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the resize request to cancel. - * The name should conform to RFC1035 or be a resource ID. - */ - resizeRequest?: string; - /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagerresizerequests$Delete extends StandardParameters { - /** - * The name of the managed instance group. - * The name should conform to RFC1035 or be a resource ID. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the resize request to delete. - * The name should conform to RFC1035 or be a resource ID. - */ - resizeRequest?: string; - /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagerresizerequests$Get extends StandardParameters { - /** - * The name of the managed instance group. - * Name should conform to RFC1035 or be a resource ID. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the resize request. - * Name should conform to RFC1035 or be a resource ID. - */ - resizeRequest?: string; - /** - * Name of the href="/compute/docs/regions-zones/#available"\>zone - * scoping this request. Name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagerresizerequests$Insert extends StandardParameters { - /** - * The name of the managed instance group to which the resize request will - * be added. - * Name should conform to RFC1035 or be a resource ID. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located and where the resize request will be created. - * Name should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagerResizeRequest; - } - export interface Params$Resource$Instancegroupmanagerresizerequests$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The name of the managed instance group. The name should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. - */ - zone?: string; - } - - export class Resource$Instancegroupmanagers { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Flags the specified instances to be removed from the - * managed instance group. Abandoning an instance does not delete the - * instance, but it does remove the instance from any target pools that are - * applied by the managed instance group. This method reduces thetargetSize of the managed instance group by the - * number of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have - * not yet been removed from the group. You must separately verify the - * status of the abandoning action with thelistmanagedinstances - * method. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Updates a HttpHealthCheck resource in the specified project using the data + * included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -92650,9 +91187,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.abandonInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpHealthChecks.patch({ + * // Name of the HttpHealthCheck resource to patch. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -92670,15 +91207,24 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instances": [] + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -92689,6 +91235,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -92730,32 +91277,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + patch( + params: Params$Resource$Httphealthchecks$Patch, options: StreamMethodOptions ): Promise>; - abandonInstances( - params?: Params$Resource$Instancegroupmanagers$Abandoninstances, + patch( + params?: Params$Resource$Httphealthchecks$Patch, options?: MethodOptions ): Promise>; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + patch( + params: Params$Resource$Httphealthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + patch( + params: Params$Resource$Httphealthchecks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + patch( + params: Params$Resource$Httphealthchecks$Patch, callback: BodyResponseCallback ): void; - abandonInstances(callback: BodyResponseCallback): void; - abandonInstances( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Abandoninstances + | Params$Resource$Httphealthchecks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -92770,12 +91317,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Abandoninstances; + {}) as Params$Resource$Httphealthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Abandoninstances; + params = {} as Params$Resource$Httphealthchecks$Patch; options = {}; } @@ -92790,16 +91337,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances' + '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -92813,10 +91360,7 @@ export namespace compute_preview { } /** - * Retrieves the list of managed instance groups and groups them by zone. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -92849,114 +91393,26 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.httpHealthChecks.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "permissions": [] * // } * } * @@ -92972,61 +91428,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + testIamPermissions( + params: Params$Resource$Httphealthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Instancegroupmanagers$Aggregatedlist, + testIamPermissions( + params?: Params$Resource$Httphealthchecks$Testiampermissions, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + ): Promise>; + testIamPermissions( + params: Params$Resource$Httphealthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + testIamPermissions( + params: Params$Resource$Httphealthchecks$Testiampermissions, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Httphealthchecks$Testiampermissions, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - aggregatedList( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Httphealthchecks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Aggregatedlist; + {}) as Params$Resource$Httphealthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Aggregatedlist; + params = {} as Params$Resource$Httphealthchecks$Testiampermissions; options = {}; } @@ -93041,33 +91492,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/aggregated/instanceGroupManagers' + '/compute/v1/projects/{project}/global/httpHealthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Applies changes to selected instances on the managed instance group. - * This method can be used to apply new overrides and/or new versions. + * Updates a HttpHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -93099,24 +91548,44 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.applyUpdatesToInstances({ - * // The name of the managed instance group, should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpHealthChecks.update({ + * // Name of the HttpHealthCheck resource to update. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone - * // where the managed instance group is located. Should conform to RFC1035. - * zone: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "allInstances": false, - * // "instances": [], - * // "minimalAction": "my_minimalAction", - * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -93127,6 +91596,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -93168,34 +91638,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + update( + params: Params$Resource$Httphealthchecks$Update, options: StreamMethodOptions ): Promise>; - applyUpdatesToInstances( - params?: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + update( + params?: Params$Resource$Httphealthchecks$Update, options?: MethodOptions ): Promise>; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + update( + params: Params$Resource$Httphealthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + update( + params: Params$Resource$Httphealthchecks$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, - callback: BodyResponseCallback - ): void; - applyUpdatesToInstances( + update( + params: Params$Resource$Httphealthchecks$Update, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Applyupdatestoinstances + | Params$Resource$Httphealthchecks$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -93210,13 +91678,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; + {}) as Params$Resource$Httphealthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; + params = {} as Params$Resource$Httphealthchecks$Update; options = {}; } @@ -93231,16 +91698,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances' + '/compute/v1/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PUT', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -93252,12 +91719,252 @@ export namespace compute_preview { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Httphealthchecks$Delete extends StandardParameters { /** - * Creates instances with per-instance configurations in this managed instance - * group. Instances are created using the current instance template. Thecreate instances operation is marked DONE if thecreateInstances request is successful. The underlying actions - * take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances - * method. + * Name of the HttpHealthCheck resource to delete. + */ + httpHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + } + export interface Params$Resource$Httphealthchecks$Get extends StandardParameters { + /** + * Name of the HttpHealthCheck resource to return. + */ + httpHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Httphealthchecks$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpHealthCheck; + } + export interface Params$Resource$Httphealthchecks$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Httphealthchecks$Patch extends StandardParameters { + /** + * Name of the HttpHealthCheck resource to patch. + */ + httpHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpHealthCheck; + } + export interface Params$Resource$Httphealthchecks$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Httphealthchecks$Update extends StandardParameters { + /** + * Name of the HttpHealthCheck resource to update. + */ + httpHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpHealthCheck; + } + + export class Resource$Httpshealthchecks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified HttpsHealthCheck resource. * @example * ```js * // Before running the sample: @@ -93289,10 +91996,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.createInstances({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpsHealthChecks.delete({ + * // Name of the HttpsHealthCheck resource to delete. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -93303,24 +92009,13 @@ export namespace compute_preview { * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. + * // request ID was received, and if so, will ignore 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). * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * @@ -93329,6 +92024,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -93370,32 +92066,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, + delete( + params: Params$Resource$Httpshealthchecks$Delete, options: StreamMethodOptions ): Promise>; - createInstances( - params?: Params$Resource$Instancegroupmanagers$Createinstances, + delete( + params?: Params$Resource$Httpshealthchecks$Delete, options?: MethodOptions ): Promise>; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, + delete( + params: Params$Resource$Httpshealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, + delete( + params: Params$Resource$Httpshealthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, + delete( + params: Params$Resource$Httpshealthchecks$Delete, callback: BodyResponseCallback ): void; - createInstances(callback: BodyResponseCallback): void; - createInstances( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Createinstances + | Params$Resource$Httpshealthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -93410,12 +92106,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Createinstances; + {}) as Params$Resource$Httpshealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Createinstances; + params = {} as Params$Resource$Httpshealthchecks$Delete; options = {}; } @@ -93430,16 +92126,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances' + '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -93453,10 +92149,7 @@ export namespace compute_preview { } /** - * Deletes the specified managed instance group and all of the instances - * in that group. Note that the instance group must not belong to a - * backend service. Read - * Deleting an instance group for more information. + * Returns the specified HttpsHealthCheck resource. * @example * ```js * // Before running the sample: @@ -93480,6 +92173,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -93488,66 +92182,30 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.delete({ - * // The name of the managed instance group to delete. - * instanceGroupManager: 'placeholder-value', - * // When set, graceful shutdown is skipped for instance deletion even if it's - * // configured for the instances. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.httpsHealthChecks.get({ + * // Name of the HttpsHealthCheck resource to return. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * } * @@ -93563,52 +92221,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Instancegroupmanagers$Delete, + get( + params: Params$Resource$Httpshealthchecks$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Instancegroupmanagers$Delete, + get( + params?: Params$Resource$Httpshealthchecks$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, + ): Promise>; + get( + params: Params$Resource$Httpshealthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Httpshealthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Httpshealthchecks$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Delete - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Delete; + {}) as Params$Resource$Httpshealthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Delete; + params = {} as Params$Resource$Httpshealthchecks$Get; options = {}; } @@ -93623,44 +92282,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Flags the specified instances in the managed instance group for immediate - * deletion. The instances are also removed from any target - * pools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of - * instances that you delete. This operation is marked as DONE - * when the action is scheduled even if the instances are still being deleted. - * You must separately verify the status of the deleting action - * with thelistmanagedinstances - * method. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Creates a HttpsHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -93692,12 +92338,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.deleteInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', - * // When set, graceful shutdown is skipped for instance deletion even if it's - * // configured for the instances. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.httpsHealthChecks.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -93715,201 +92356,24 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [], - * // "skipInstancesOnValidationError": false - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, - options: StreamMethodOptions - ): Promise>; - deleteInstances( - params?: Params$Resource$Instancegroupmanagers$Deleteinstances, - options?: MethodOptions - ): Promise>; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, - callback: BodyResponseCallback - ): void; - deleteInstances(callback: BodyResponseCallback): void; - deleteInstances( - paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Deleteinstances - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Deleteinstances; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Deleteinstances; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes selected per-instance configurations for the managed instance - * group. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instanceGroupManagers.deletePerInstanceConfigs({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone - * // where the managed instance - * // group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "names": [] + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -93920,6 +92384,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -93961,34 +92426,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: StreamMethodOptions ): Promise>; - deletePerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + insert( + params?: Params$Resource$Httpshealthchecks$Insert, options?: MethodOptions ): Promise>; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, - callback: BodyResponseCallback - ): void; - deletePerInstanceConfigs( + insert( + params: Params$Resource$Httpshealthchecks$Insert, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs + | Params$Resource$Httpshealthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -94003,13 +92466,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; + {}) as Params$Resource$Httpshealthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; + params = {} as Params$Resource$Httpshealthchecks$Insert; options = {}; } @@ -94024,7 +92486,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs' + '/compute/v1/projects/{project}/global/httpsHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -94032,8 +92494,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -94047,7 +92509,8 @@ export namespace compute_preview { } /** - * Returns all of the details about the specified managed instance group. + * Retrieves the list of HttpsHealthCheck resources available to the specified + * project. * @example * ```js * // Before running the sample: @@ -94080,53 +92543,102 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.get({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpsHealthChecks.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", + * // "items": [], * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "name": "my_name", - * // "namedPorts": [], - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetSizePolicy": {}, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -94142,54 +92654,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Instancegroupmanagers$Get, + list( + params: Params$Resource$Httpshealthchecks$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instancegroupmanagers$Get, + list( + params?: Params$Resource$Httpshealthchecks$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Instancegroupmanagers$Get, + ): Promise>; + list( + params: Params$Resource$Httpshealthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroupmanagers$Get, + list( + params: Params$Resource$Httpshealthchecks$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroupmanagers$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Httpshealthchecks$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Get - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Get; + {}) as Params$Resource$Httpshealthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Get; + params = {} as Params$Resource$Httpshealthchecks$List; options = {}; } @@ -94204,7 +92716,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + '/compute/v1/projects/{project}/global/httpsHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -94212,32 +92724,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a managed instance group using the information that you specify - * in the request. After the group is created, instances in the group are - * created using the specified instance template. - * This operation is marked as DONE when the group is created - * even if the instances in the group have not yet been created. You - * must separately verify the status of the individual instances with thelistmanagedinstances - * method. - * - * A managed instance group can have up to 1000 VM instances per group. Please - * contact Cloud Support if you need an increase in - * this limit. + * Updates a HttpsHealthCheck resource in the specified project using the data + * included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -94269,7 +92774,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.insert({ + * const res = await compute.httpsHealthChecks.patch({ + * // Name of the HttpsHealthCheck resource to patch. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -94287,47 +92794,24 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where you want to create the managed instance group. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", * // "name": "my_name", - * // "namedPorts": [], - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetSizePolicy": {}, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -94338,6 +92822,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -94379,32 +92864,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + patch( + params: Params$Resource$Httpshealthchecks$Patch, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Instancegroupmanagers$Insert, + patch( + params?: Params$Resource$Httpshealthchecks$Patch, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + patch( + params: Params$Resource$Httpshealthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + patch( + params: Params$Resource$Httpshealthchecks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + patch( + params: Params$Resource$Httpshealthchecks$Patch, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Insert + | Params$Resource$Httpshealthchecks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -94419,12 +92904,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Insert; + {}) as Params$Resource$Httpshealthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Insert; + params = {} as Params$Resource$Httpshealthchecks$Patch; options = {}; } @@ -94439,16 +92924,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers' + '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -94462,8 +92947,7 @@ export namespace compute_preview { } /** - * Retrieves a list of managed instance groups that are contained within the - * specified project and zone. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -94496,105 +92980,26 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.httpsHealthChecks.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "permissions": [] * // } * } * @@ -94610,54 +93015,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Instancegroupmanagers$List, + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Instancegroupmanagers$List, + testIamPermissions( + params?: Params$Resource$Httpshealthchecks$Testiampermissions, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Instancegroupmanagers$List, + ): Promise>; + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagers$List, + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagers$List, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$List - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$List; + {}) as Params$Resource$Httpshealthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$List; + params = {} as Params$Resource$Httpshealthchecks$Testiampermissions; options = {}; } @@ -94672,32 +93079,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers' + '/compute/v1/projects/{project}/global/httpsHealthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all errors thrown by actions on instances for a given managed - * instance group. The filter and orderBy query - * parameters are not supported. + * Updates a HttpsHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -94721,7 +93127,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -94730,107 +93135,81 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.listErrors({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The name of the managed instance group. - * // It must be a string that meets the requirements in RFC1035, or an - * // unsigned long integer: must match regexp pattern: - * // (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. - * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.httpsHealthChecks.update({ + * // Name of the HttpsHealthCheck resource to update. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone where the managed - * // instance group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "items": [], - * // "nextPageToken": "my_nextPageToken" + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -94846,61 +93225,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, + update( + params: Params$Resource$Httpshealthchecks$Update, options: StreamMethodOptions ): Promise>; - listErrors( - params?: Params$Resource$Instancegroupmanagers$Listerrors, + update( + params?: Params$Resource$Httpshealthchecks$Update, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, + ): Promise>; + update( + params: Params$Resource$Httpshealthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, - callback: BodyResponseCallback + update( + params: Params$Resource$Httpshealthchecks$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listErrors( - callback: BodyResponseCallback + update( + params: Params$Resource$Httpshealthchecks$Update, + callback: BodyResponseCallback ): void; - listErrors( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listerrors - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Update + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listerrors; + {}) as Params$Resource$Httpshealthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Listerrors; + params = {} as Params$Resource$Httpshealthchecks$Update; options = {}; } @@ -94915,281 +93285,274 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listErrors' + '/compute/v1/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PUT', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Httpshealthchecks$Delete extends StandardParameters { /** - * Lists all of the instances in the managed instance group. Each instance - * in the list has a currentAction, which indicates the action - * that the managed instance group is performing on the instance. For example, - * if the group is still creating an instance, the currentAction - * is CREATING. If a previous action failed, the - * list displays the errors for that failed action. The orderBy - * query parameter is not supported. The `pageToken` query parameter is - * supported only if the group's `listManagedInstancesResults` field is set - * to `PAGINATED`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * Name of the HttpsHealthCheck resource to delete. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Httpshealthchecks$Get extends StandardParameters { + /** + * Name of the HttpsHealthCheck resource to return. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Httpshealthchecks$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Do the magic - * const res = await compute.instanceGroupManagers.listManagedInstances({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * }); - * console.log(res.data); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * // Example response - * // { - * // "managedInstances": [], - * // "nextPageToken": "my_nextPageToken" - * // } - * } + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpsHealthCheck; + } + export interface Params$Resource$Httpshealthchecks$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* * ``` * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options: StreamMethodOptions - ): Promise>; - listManagedInstances( - params?: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - callback: BodyResponseCallback - ): void; - listManagedInstances( - callback: BodyResponseCallback - ): void; - listManagedInstances( - paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listmanagedinstances - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listmanagedinstances; - let options = (optionsOrCallback || {}) as MethodOptions; + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Httpshealthchecks$Patch extends StandardParameters { + /** + * Name of the HttpsHealthCheck resource to patch. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Listmanagedinstances; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$HttpsHealthCheck; + } + export interface Params$Resource$Httpshealthchecks$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Httpshealthchecks$Update extends StandardParameters { + /** + * Name of the HttpsHealthCheck resource to update. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } + /** + * Request body metadata + */ + requestBody?: Schema$HttpsHealthCheck; + } + + export class Resource$Imagefamilyviews { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Lists all of the per-instance configurations defined for the managed - * instance group. The orderBy query parameter is not supported. + * Returns the latest image that is part of an image family, is not + * deprecated and is rolled out in the specified zone. * @example * ```js * // Before running the sample: @@ -95222,105 +93585,20 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.listPerInstanceConfigs({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The name of the managed instance group. It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.imageFamilyViews.get({ + * // Name of the image family to search for. + * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "items": [], - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "image": {} * // } * } * @@ -95336,62 +93614,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + get( + params: Params$Resource$Imagefamilyviews$Get, options: StreamMethodOptions ): Promise>; - listPerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + get( + params?: Params$Resource$Imagefamilyviews$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + ): Promise>; + get( + params: Params$Resource$Imagefamilyviews$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, - callback: BodyResponseCallback + get( + params: Params$Resource$Imagefamilyviews$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - callback: BodyResponseCallback + get( + params: Params$Resource$Imagefamilyviews$Get, + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Imagefamilyviews$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; + {}) as Params$Resource$Imagefamilyviews$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; + params = {} as Params$Resource$Imagefamilyviews$Get; options = {}; } @@ -95406,46 +93675,52 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs' + '/compute/v1/projects/{project}/zones/{zone}/imageFamilyViews/{family}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'zone', 'family'], + pathParams: ['family', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Imagefamilyviews$Get extends StandardParameters { /** - * Updates a managed instance group using the information that you specify - * in the request. - * This operation is marked as DONE when the group is patched - * even if the instances in the group are still in the process of being - * patched. You must separately verify the status of the individual instances - * with thelistManagedInstances - * method. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. - * - * If you update your group to specify a new template or instance - * configuration, it's possible that your intended specification for each VM - * in the group is different from the current state of that VM. To learn how - * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in - * a MIG. + * Name of the image family to search for. + */ + family?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Images { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified image. * @example * ```js * // Before running the sample: @@ -95477,9 +93752,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.patch({ - * // The name of the instance group manager. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.delete({ + * // Name of the image resource to delete. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -95497,49 +93772,6 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // you want to create the managed instance group. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", - * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "name": "my_name", - * // "namedPorts": [], - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetSizePolicy": {}, - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -95548,6 +93780,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -95589,32 +93822,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Instancegroupmanagers$Patch, + delete( + params: Params$Resource$Images$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Instancegroupmanagers$Patch, + delete( + params?: Params$Resource$Images$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, + delete( + params: Params$Resource$Images$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, + delete( + params: Params$Resource$Images$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, + delete( + params: Params$Resource$Images$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Patch + | Params$Resource$Images$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -95628,13 +93861,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Patch; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Patch; + params = {} as Params$Resource$Images$Delete; options = {}; } @@ -95648,17 +93880,16 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + rootUrl + '/compute/v1/projects/{project}/global/images/{image}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { @@ -95672,9 +93903,9 @@ export namespace compute_preview { } /** - * Inserts or patches per-instance configurations for the managed instance - * group. perInstanceConfig.name serves as a key used to - * distinguish whether to perform insert or patch. + * Sets the deprecation status of an image. + * + * If an empty request body is given, clears the deprecation status instead. * @example * ```js * // Before running the sample: @@ -95706,10 +93937,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.patchPerInstanceConfigs({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.deprecate({ + * // Image name. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -95727,16 +93957,16 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "perInstanceConfigs": [] + * // "deleted": "my_deleted", + * // "deprecated": "my_deprecated", + * // "obsolete": "my_obsolete", + * // "replacement": "my_replacement", + * // "state": "my_state" * // } * }, * }); @@ -95747,6 +93977,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -95788,34 +94019,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + deprecate( + params: Params$Resource$Images$Deprecate, options: StreamMethodOptions ): Promise>; - patchPerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + deprecate( + params?: Params$Resource$Images$Deprecate, options?: MethodOptions ): Promise>; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + deprecate( + params: Params$Resource$Images$Deprecate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + deprecate( + params: Params$Resource$Images$Deprecate, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, - callback: BodyResponseCallback - ): void; - patchPerInstanceConfigs( + deprecate( + params: Params$Resource$Images$Deprecate, callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( + deprecate(callback: BodyResponseCallback): void; + deprecate( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs + | Params$Resource$Images$Deprecate | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -95829,14 +94058,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Deprecate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; + params = {} as Params$Resource$Images$Deprecate; options = {}; } @@ -95851,7 +94078,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs' + '/compute/v1/projects/{project}/global/images/{image}/deprecate' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -95859,8 +94086,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { @@ -95874,19 +94101,7 @@ export namespace compute_preview { } /** - * Flags the specified VM instances in the managed instance group to be - * immediately recreated. Each instance is recreated using the group's current - * configuration. This operation is marked as DONE when the flag - * is set even if the instances have not yet been recreated. You must - * separately verify the status of each instance by checking itscurrentAction field; for more information, see Checking - * the status of managed instances. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Returns the specified image. * @example * ```js * // Before running the sample: @@ -95910,6 +94125,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -95918,74 +94134,52 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.recreateInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', - * // When set, graceful shutdown is skipped for instance recreation even if it's - * // configured for the instances. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.images.get({ + * // Name of the image resource to return. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "imageEncryptionKey": {}, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "params": {}, + * // "rawDisk": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "storageLocations": [] * // } * } * @@ -96001,52 +94195,51 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, + get( + params: Params$Resource$Images$Get, options: StreamMethodOptions ): Promise>; - recreateInstances( - params?: Params$Resource$Instancegroupmanagers$Recreateinstances, + get( + params?: Params$Resource$Images$Get, options?: MethodOptions - ): Promise>; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, + ): Promise>; + get( + params: Params$Resource$Images$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Images$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, - callback: BodyResponseCallback + get( + params: Params$Resource$Images$Get, + callback: BodyResponseCallback ): void; - recreateInstances(callback: BodyResponseCallback): void; - recreateInstances( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Recreateinstances - | BodyResponseCallback + | Params$Resource$Images$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Recreateinstances; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Recreateinstances; + params = {} as Params$Resource$Images$Get; options = {}; } @@ -96060,53 +94253,32 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances' + rootUrl + '/compute/v1/projects/{project}/global/images/{image}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Resizes the managed instance group. If you increase the size, the group - * creates new instances using the current instance template. If you decrease - * the size, the group deletes instances. The resize operation is markedDONE when the resize actions are scheduled even if the group - * has not yet added or deleted any instances. You must separately - * verify the status of the creating or deleting - * actions with thelistmanagedinstances - * method. - * - * When resizing down, the instance group arbitrarily chooses the order in - * which VMs are deleted. The group takes into account some VM attributes when - * making the selection including: - * - * + The status of the VM instance. - * + The health of the VM instance. - * + The instance template version the VM is based on. - * + For regional managed instance groups, the location of the VM instance. - * - * This list is subject to change. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. + * Returns the latest image that is part of an image family and is not + * deprecated. For more information on image families, seePublic + * image families documentation. * @example * ```js * // Before running the sample: @@ -96130,6 +94302,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -96138,67 +94311,53 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.resize({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', - * // Project ID for this request. + * const res = await compute.images.getFromFamily({ + * // Name of the image family to search for. + * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The image project that the image belongs to. For example, to get a CentOS + * // image, specify centos-cloud as the image project. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The number of running instances that the managed instance group should - * // maintain at any given time. The group automatically adds or removes - * // instances to maintain the number of instances specified by this parameter. - * size: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "imageEncryptionKey": {}, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "params": {}, + * // "rawDisk": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "storageLocations": [] * // } * } * @@ -96214,52 +94373,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resize( - params: Params$Resource$Instancegroupmanagers$Resize, + getFromFamily( + params: Params$Resource$Images$Getfromfamily, options: StreamMethodOptions ): Promise>; - resize( - params?: Params$Resource$Instancegroupmanagers$Resize, + getFromFamily( + params?: Params$Resource$Images$Getfromfamily, options?: MethodOptions - ): Promise>; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, + ): Promise>; + getFromFamily( + params: Params$Resource$Images$Getfromfamily, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getFromFamily( + params: Params$Resource$Images$Getfromfamily, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, - callback: BodyResponseCallback + getFromFamily( + params: Params$Resource$Images$Getfromfamily, + callback: BodyResponseCallback ): void; - resize(callback: BodyResponseCallback): void; - resize( + getFromFamily(callback: BodyResponseCallback): void; + getFromFamily( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Resize - | BodyResponseCallback + | Params$Resource$Images$Getfromfamily + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Resize; + {}) as Params$Resource$Images$Getfromfamily; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Resize; + params = {} as Params$Resource$Images$Getfromfamily; options = {}; } @@ -96274,45 +94433,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize' + '/compute/v1/projects/{project}/global/images/family/{family}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager', 'size'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'family'], + pathParams: ['family', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Flags the specified instances in the managed instance group to be - * resumed. This method increases thetargetSize and decreases the targetSuspendedSize - * of the managed instance group by the number of instances that you resume. - * The resumeInstances operation is marked DONE if - * the resumeInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances - * method. - * - * In this request, you can only specify instances that are suspended. For - * example, if an instance was previously suspended using the suspendInstances - * method, it can be resumed using the resumeInstances method. - * - * If a health check is attached to the managed instance group, the specified - * instances will be verified as healthy after they are resumed. - * - * You can specify a maximum of 1000 instances with this method per request. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -96336,6 +94481,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -96344,71 +94490,23 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.resumeInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -96424,52 +94522,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, options: StreamMethodOptions ): Promise>; - resumeInstances( - params?: Params$Resource$Instancegroupmanagers$Resumeinstances, + getIamPolicy( + params?: Params$Resource$Images$Getiampolicy, options?: MethodOptions - ): Promise>; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, + ): Promise>; + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, + callback: BodyResponseCallback ): void; - resumeInstances(callback: BodyResponseCallback): void; - resumeInstances( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Resumeinstances - | BodyResponseCallback + | Params$Resource$Images$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Resumeinstances; + {}) as Params$Resource$Images$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Resumeinstances; + params = {} as Params$Resource$Images$Getiampolicy; options = {}; } @@ -96484,32 +94582,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resumeInstances' + '/compute/v1/projects/{project}/global/images/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Specifies the instance template to use when creating new instances in this - * group. The templates for existing instances in the group do not change - * unless you run recreateInstances, runapplyUpdatesToInstances, or set the group'supdatePolicy.type to PROACTIVE. + * Creates an image in the specified project using the data included + * in the request. * @example * ```js * // Before running the sample: @@ -96541,9 +94638,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.setInstanceTemplate({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.insert({ + * // Force image creation if true. + * forceCreate: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -96561,15 +94658,46 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instanceTemplate": "my_instanceTemplate" + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "imageEncryptionKey": {}, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "name": "my_name", + * // "params": {}, + * // "rawDisk": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", + * // "status": "my_status", + * // "storageLocations": [] * // } * }, * }); @@ -96580,6 +94708,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -96621,32 +94750,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + insert( + params: Params$Resource$Images$Insert, options: StreamMethodOptions ): Promise>; - setInstanceTemplate( - params?: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + insert( + params?: Params$Resource$Images$Insert, options?: MethodOptions ): Promise>; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + insert( + params: Params$Resource$Images$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + insert( + params: Params$Resource$Images$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + insert( + params: Params$Resource$Images$Insert, callback: BodyResponseCallback ): void; - setInstanceTemplate(callback: BodyResponseCallback): void; - setInstanceTemplate( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Setinstancetemplate + | Params$Resource$Images$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -96660,14 +94789,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + params = {} as Params$Resource$Images$Insert; options = {}; } @@ -96681,8 +94808,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate' + rootUrl + '/compute/v1/projects/{project}/global/images' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -96690,8 +94816,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -96705,12 +94831,13 @@ export namespace compute_preview { } /** - * Modifies the target pools to which all instances in this managed instance - * group are assigned. The target pools automatically apply to all of the - * instances in the managed instance group. This operation is markedDONE when you make the request even if the instances have not - * yet been added to their target pools. The change might take some time to - * apply to all of the instances in the group depending on the size of the - * group. + * Retrieves the list of custom images + * available to the specified project. Custom images are images you + * create that belong to your project. This method does not + * get any images that belong to other projects, including publicly-available + * images, like Debian 8. If you want to get a list of publicly-available + * images, use this method to make a request to the respective image project, + * such as debian-cloud or windows-cloud. * @example * ```js * // Before running the sample: @@ -96734,6 +94861,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -96742,72 +94870,102 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.setTargetPools({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "fingerprint": "my_fingerprint", - * // "targetPools": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -96823,52 +94981,51 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + list( + params: Params$Resource$Images$List, options: StreamMethodOptions ): Promise>; - setTargetPools( - params?: Params$Resource$Instancegroupmanagers$Settargetpools, + list( + params?: Params$Resource$Images$List, options?: MethodOptions - ): Promise>; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + ): Promise>; + list( + params: Params$Resource$Images$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Images$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, - callback: BodyResponseCallback + list( + params: Params$Resource$Images$List, + callback: BodyResponseCallback ): void; - setTargetPools(callback: BodyResponseCallback): void; - setTargetPools( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Settargetpools - | BodyResponseCallback + | Params$Resource$Images$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Settargetpools; + let params = (paramsOrCallback || {}) as Params$Resource$Images$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Settargetpools; + params = {} as Params$Resource$Images$List; options = {}; } @@ -96882,46 +95039,32 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools' + rootUrl + '/compute/v1/projects/{project}/global/images' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Flags the specified instances in the managed instance group to be - * started. This method increases thetargetSize and decreases the targetStoppedSize - * of the managed instance group by the number of instances that you start. - * The startInstances operation is marked DONE if - * the startInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances - * method. - * - * In this request, you can only specify instances that are stopped. For - * example, if an instance was previously stopped using the stopInstances - * method, it can be started using the startInstances method. - * - * If a health check is attached to the managed instance group, the specified - * instances will be verified as healthy after they are started. - * - * You can specify a maximum of 1000 instances with this method per request. + * Patches the specified image with the data included in the request. + * Only the following fields can be modified: family, description, + * deprecation status. * @example * ```js * // Before running the sample: @@ -96953,9 +95096,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.startInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.patch({ + * // Name of the image resource to patch. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -96973,15 +95116,46 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instances": [] + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "imageEncryptionKey": {}, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "name": "my_name", + * // "params": {}, + * // "rawDisk": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", + * // "status": "my_status", + * // "storageLocations": [] * // } * }, * }); @@ -96992,6 +95166,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -97033,32 +95208,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + patch( + params: Params$Resource$Images$Patch, options: StreamMethodOptions ): Promise>; - startInstances( - params?: Params$Resource$Instancegroupmanagers$Startinstances, + patch( + params?: Params$Resource$Images$Patch, options?: MethodOptions ): Promise>; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + patch( + params: Params$Resource$Images$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + patch( + params: Params$Resource$Images$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + patch( + params: Params$Resource$Images$Patch, callback: BodyResponseCallback ): void; - startInstances(callback: BodyResponseCallback): void; - startInstances( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Startinstances + | Params$Resource$Images$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -97072,13 +95247,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Startinstances; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Startinstances; + params = {} as Params$Resource$Images$Patch; options = {}; } @@ -97092,17 +95266,16 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/startInstances' + rootUrl + '/compute/v1/projects/{project}/global/images/{image}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { @@ -97116,31 +95289,8 @@ export namespace compute_preview { } /** - * Flags the specified instances in the managed instance group to be - * immediately stopped. You can only specify instances that are running in - * this request. This method reduces thetargetSize and increases the targetStoppedSize - * of the managed instance group by the number of instances that you stop. - * The stopInstances operation is marked DONE if - * the stopInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances - * method. - * - * If the standbyPolicy.initialDelaySec field is set, the group - * delays stopping the instances until initialDelaySec have - * passed from instance.creationTimestamp (that is, when the - * instance was created). This delay gives your application time to - * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there - * will be zero delay. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is stopped. - * - * Stopped instances can be started using the startInstances - * method. - * - * You can specify a maximum of 1000 instances with this method per request. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -97172,39 +95322,20 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.stopInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', - * // When set, graceful shutdown is skipped for instance stopping even if it's - * // configured for the instances. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.images.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "forceStop": false, - * // "instances": [] + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -97212,35 +95343,10 @@ export namespace compute_preview { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -97256,52 +95362,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, options: StreamMethodOptions ): Promise>; - stopInstances( - params?: Params$Resource$Instancegroupmanagers$Stopinstances, + setIamPolicy( + params?: Params$Resource$Images$Setiampolicy, options?: MethodOptions - ): Promise>; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + ): Promise>; + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, + callback: BodyResponseCallback ): void; - stopInstances(callback: BodyResponseCallback): void; - stopInstances( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Stopinstances - | BodyResponseCallback + | Params$Resource$Images$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Stopinstances; + {}) as Params$Resource$Images$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Stopinstances; + params = {} as Params$Resource$Images$Setiampolicy; options = {}; } @@ -97316,7 +95422,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/stopInstances' + '/compute/v1/projects/{project}/global/images/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -97324,46 +95430,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Flags the specified instances in the managed instance group to be - * immediately suspended. You can only specify instances that are running in - * this request. This method reduces thetargetSize and increases the targetSuspendedSize - * of the managed instance group by the number of instances that you suspend. - * The suspendInstances operation is marked DONE if - * the suspendInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances - * method. - * - * If the standbyPolicy.initialDelaySec field is set, the group - * delays suspension of the instances until initialDelaySec have - * passed from instance.creationTimestamp (that is, when the - * instance was created). This delay gives your application time to - * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there - * will be zero delay. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is suspended. - * - * Suspended instances can be resumed using the resumeInstances - * method. - * - * You can specify a maximum of 1000 instances with this method per request. + * Sets the labels on an image. To learn more about labels, read theLabeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -97395,36 +95478,19 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.suspendInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "forceSuspend": false, - * // "instances": [] + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} * // } * }, * }); @@ -97435,6 +95501,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -97476,32 +95543,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + setLabels( + params: Params$Resource$Images$Setlabels, options: StreamMethodOptions ): Promise>; - suspendInstances( - params?: Params$Resource$Instancegroupmanagers$Suspendinstances, + setLabels( + params?: Params$Resource$Images$Setlabels, options?: MethodOptions ): Promise>; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + setLabels( + params: Params$Resource$Images$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + setLabels( + params: Params$Resource$Images$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + setLabels( + params: Params$Resource$Images$Setlabels, callback: BodyResponseCallback ): void; - suspendInstances(callback: BodyResponseCallback): void; - suspendInstances( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Suspendinstances + | Params$Resource$Images$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -97515,13 +95582,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Suspendinstances; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Suspendinstances; + params = {} as Params$Resource$Images$Setlabels; options = {}; } @@ -97536,7 +95602,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/suspendInstances' + '/compute/v1/projects/{project}/global/images/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -97544,8 +95610,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -97559,9 +95625,7 @@ export namespace compute_preview { } /** - * Inserts or updates per-instance configurations for the managed instance - * group. perInstanceConfig.name serves as a key used to - * distinguish whether to perform insert or patch. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -97585,6 +95649,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -97593,37 +95658,18 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.updatePerInstanceConfigs({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "perInstanceConfigs": [] + * // "permissions": [] * // } * }, * }); @@ -97631,35 +95677,7 @@ export namespace compute_preview { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -97675,55 +95693,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, options: StreamMethodOptions ): Promise>; - updatePerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + testIamPermissions( + params?: Params$Resource$Images$Testiampermissions, options?: MethodOptions - ): Promise>; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + ): Promise>; + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, + callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Images$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + {}) as Params$Resource$Images$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + params = {} as Params$Resource$Images$Testiampermissions; options = {}; } @@ -97738,7 +95757,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs' + '/compute/v1/projects/{project}/global/images/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -97746,26 +95765,26 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Instancegroupmanagers$Abandoninstances extends StandardParameters { + export interface Params$Resource$Images$Delete extends StandardParameters { /** - * The name of the managed instance group. + * Name of the image resource to delete. */ - instanceGroupManager?: string; + image?: string; /** * Project ID for this request. */ @@ -97786,153 +95805,12 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + } + export interface Params$Resource$Images$Deprecate extends StandardParameters { /** - * The name of thezone where the managed - * instance group is located. + * Image name. */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersAbandonInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instancegroupmanagers$Applyupdatestoinstances extends StandardParameters { - /** - * The name of the managed instance group, should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone - * where the managed instance group is located. Should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersApplyUpdatesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Createinstances extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; + image?: string; /** * Project ID for this request. */ @@ -97945,141 +95823,60 @@ export namespace compute_preview { * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. + * request ID was received, and if so, will ignore 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). */ requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManagersCreateInstancesRequest; + requestBody?: Schema$DeprecationStatus; } - export interface Params$Resource$Instancegroupmanagers$Delete extends StandardParameters { - /** - * The name of the managed instance group to delete. - */ - instanceGroupManager?: string; + export interface Params$Resource$Images$Get extends StandardParameters { /** - * When set, graceful shutdown is skipped for instance deletion even if it's - * configured for the instances. + * Name of the image resource to return. */ - noGracefulShutdown?: boolean; + image?: string; /** * Project ID for this request. */ project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; } - export interface Params$Resource$Instancegroupmanagers$Deleteinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; + export interface Params$Resource$Images$Getfromfamily extends StandardParameters { /** - * When set, graceful shutdown is skipped for instance deletion even if it's - * configured for the instances. + * Name of the image family to search for. */ - noGracefulShutdown?: boolean; + family?: string; /** - * Project ID for this request. + * The image project that the image belongs to. For example, to get a CentOS + * image, specify centos-cloud as the image project. */ project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersDeleteInstancesRequest; } - export interface Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs extends StandardParameters { + export interface Params$Resource$Images$Getiampolicy extends StandardParameters { /** - * The name of the managed instance group. - * It should conform to RFC1035. + * Requested IAM Policy version. */ - instanceGroupManager?: string; + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: string; /** - * The name of thezone - * where the managed instance - * group is located. - * It should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata + * Name or id of the resource for this request. */ - requestBody?: Schema$InstanceGroupManagersDeletePerInstanceConfigsReq; + resource?: string; } - export interface Params$Resource$Instancegroupmanagers$Get extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Images$Insert extends StandardParameters { /** - * The name of thezone where the managed - * instance group is located. + * Force image creation if true. */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Insert extends StandardParameters { + forceCreate?: boolean; /** * Project ID for this request. */ @@ -98100,18 +95897,13 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone - * where you want to create the managed instance group. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManager; + requestBody?: Schema$Image; } - export interface Params$Resource$Instancegroupmanagers$List extends StandardParameters { + export interface Params$Resource$Images$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -98205,225 +95997,484 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Images$Patch extends StandardParameters { /** - * The name of thezone where the managed - * instance group is located. + * Name of the image resource to patch. */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Listerrors extends StandardParameters { + image?: string; /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * You cannot combine constraints on multiple fields using regular - * expressions. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - filter?: string; + requestId?: string; + /** - * The name of the managed instance group. - * It must be a string that meets the requirements in RFC1035, or an - * unsigned long integer: must match regexp pattern: - * (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + * Request body metadata */ - instanceGroupManager?: string; + requestBody?: Schema$Image; + } + export interface Params$Resource$Images$Setiampolicy extends StandardParameters { /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * Project ID for this request. */ - maxResults?: number; + project?: string; /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * Name or id of the resource for this request. */ - orderBy?: string; + resource?: string; + /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Request body metadata */ - pageToken?: string; + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Images$Setlabels extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * The name of thezone where the managed - * instance group is located. - * It should conform to RFC1035. + * Name or id of the resource for this request. */ - zone?: string; + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; } - export interface Params$Resource$Instancegroupmanagers$Listmanagedinstances extends StandardParameters { + export interface Params$Resource$Images$Testiampermissions extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Imageviews { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the specified global ImageView resource, with a regional + * context. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. + * // Do the magic + * const res = await compute.imageViews.get({ + * // Required. Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Required. Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the image resource to return. + * resourceId: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "image": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) * ``` * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Imageviews$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Imageviews$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Imageviews$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Imageviews$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Imageviews$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Imageviews$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Imageviews$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/imageViews/{resourceId}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resourceId'], + pathParams: ['project', 'region', 'resourceId'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns a list of global ImageView resources, with a regional + * context. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * // Do the magic + * const res = await compute.imageViews.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Required. Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Required. Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - orderBy?: string; + list( + params: Params$Resource$Imageviews$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Imageviews$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Imageviews$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Imageviews$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Imageviews$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Imageviews$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Imageviews$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/imageViews' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Imageviews$Get extends StandardParameters { /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Required. Project ID for this request. */ - pageToken?: string; + project?: string; /** - * Project ID for this request. + * Required. Name of the region for this request. */ - project?: string; + region?: string; /** - * The name of thezone where the managed - * instance group is located. + * Name of the image resource to return. */ - zone?: string; + resourceId?: string; } - export interface Params$Resource$Instancegroupmanagers$Listperinstanceconfigs extends StandardParameters { + export interface Params$Resource$Imageviews$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -98485,10 +96536,6 @@ export namespace compute_preview { * expressions. */ filter?: string; - /** - * The name of the managed instance group. It should conform to RFC1035. - */ - instanceGroupManager?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -98518,473 +96565,61 @@ export namespace compute_preview { */ pageToken?: string; /** - * Project ID for this request. + * Required. Project ID for this request. */ project?: string; /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. + * Required. Name of the region for this request. */ - zone?: string; + region?: string; } - export interface Params$Resource$Instancegroupmanagers$Patch extends StandardParameters { - /** - * The name of the instance group manager. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone where - * you want to create the managed instance group. - */ - zone?: string; + + export class Resource$Instancegroupmanagerresizerequests { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManager; - } - export interface Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Cancels the specified resize request and removes it from the queue. + * Cancelled resize request does no longer wait for the resources to be + * provisioned. Cancel is only possible for requests that are accepted in the + * queue. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersPatchPerInstanceConfigsReq; - } - export interface Params$Resource$Instancegroupmanagers$Recreateinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * When set, graceful shutdown is skipped for instance recreation even if it's - * configured for the instances. - */ - noGracefulShutdown?: boolean; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersRecreateInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Resize extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The number of running instances that the managed instance group should - * maintain at any given time. The group automatically adds or removes - * instances to maintain the number of instances specified by this parameter. - */ - size?: number; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Resumeinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersResumeInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Setinstancetemplate extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSetInstanceTemplateRequest; - } - export interface Params$Resource$Instancegroupmanagers$Settargetpools extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSetTargetPoolsRequest; - } - export interface Params$Resource$Instancegroupmanagers$Startinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersStartInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Stopinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * When set, graceful shutdown is skipped for instance stopping even if it's - * configured for the instances. - */ - noGracefulShutdown?: boolean; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersStopInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Suspendinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSuspendInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersUpdatePerInstanceConfigsReq; - } - - export class Resource$Instancegroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Adds a list of instances to the specified instance group. All of the - * instances in the instance group must be in the same network/subnetwork. - * Read - * Adding instances for more information. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.addInstances({ - * // The name of the instance group where you are adding instances. - * instanceGroup: 'placeholder-value', + * const res = await compute.instanceGroupManagerResizeRequests.cancel({ + * // The name of the managed instance group. + * // The name should conform to RFC1035 or be a resource ID. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -99002,17 +96637,12 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. + * // The name of the resize request to cancel. + * // The name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. The name should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * @@ -99021,6 +96651,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -99062,32 +96693,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addInstances( - params: Params$Resource$Instancegroups$Addinstances, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options: StreamMethodOptions ): Promise>; - addInstances( - params?: Params$Resource$Instancegroups$Addinstances, + cancel( + params?: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options?: MethodOptions ): Promise>; - addInstances( - params: Params$Resource$Instancegroups$Addinstances, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addInstances( - params: Params$Resource$Instancegroups$Addinstances, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addInstances( - params: Params$Resource$Instancegroups$Addinstances, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, callback: BodyResponseCallback ): void; - addInstances(callback: BodyResponseCallback): void; - addInstances( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Instancegroups$Addinstances + | Params$Resource$Instancegroupmanagerresizerequests$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -99102,12 +96733,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Addinstances; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Addinstances; + params = + {} as Params$Resource$Instancegroupmanagerresizerequests$Cancel; options = {}; } @@ -99122,7 +96754,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -99130,8 +96762,18 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { @@ -99145,257 +96787,9 @@ export namespace compute_preview { } /** - * Retrieves the list of instance groups and sorts them by zone. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instanceGroups.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - aggregatedList( - params: Params$Resource$Instancegroups$Aggregatedlist, - options: StreamMethodOptions - ): Promise>; - aggregatedList( - params?: Params$Resource$Instancegroups$Aggregatedlist, - options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Instancegroups$Aggregatedlist, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instancegroups$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instancegroups$Aggregatedlist, - callback: BodyResponseCallback - ): void; - aggregatedList( - callback: BodyResponseCallback - ): void; - aggregatedList( - paramsOrCallback?: - | Params$Resource$Instancegroups$Aggregatedlist - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Aggregatedlist; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Aggregatedlist; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/instanceGroups' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes the specified instance group. The instances in the group are not - * deleted. Note that instance group must not belong to a backend service. - * Read - * Deleting an instance group for more information. + * Deletes the specified, inactive resize request. Requests that are still + * active cannot be deleted. Deleting request does not delete instances that + * were provisioned previously. * @example * ```js * // Before running the sample: @@ -99427,9 +96821,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.delete({ - * // The name of the instance group to delete. - * instanceGroup: 'placeholder-value', + * const res = await compute.instanceGroupManagerResizeRequests.delete({ + * // The name of the managed instance group. + * // The name should conform to RFC1035 or be a resource ID. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -99447,8 +96842,11 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. + * // The name of the resize request to delete. + * // The name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. The name should conform to RFC1035. * zone: 'placeholder-value', * }); * console.log(res.data); @@ -99458,6 +96856,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -99500,31 +96899,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instancegroups$Delete, + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instancegroups$Delete, + params?: Params$Resource$Instancegroupmanagerresizerequests$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instancegroups$Delete, + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instancegroups$Delete, + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instancegroups$Delete, + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instancegroups$Delete + | Params$Resource$Instancegroupmanagerresizerequests$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -99539,12 +96938,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Delete; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Delete; + params = + {} as Params$Resource$Instancegroupmanagerresizerequests$Delete; options = {}; } @@ -99559,7 +96959,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -99567,8 +96967,18 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { @@ -99582,12 +96992,7 @@ export namespace compute_preview { } /** - * Returns the specified zonal instance group. Get a list of available zonal - * instance groups by making a list() request. - * - * For managed instance groups, use theinstanceGroupManagers - * or regionInstanceGroupManagers - * methods instead. + * Returns all of the details about the specified resize request. * @example * ```js * // Before running the sample: @@ -99620,14 +97025,18 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.get({ - * // The name of the instance group. - * instanceGroup: 'placeholder-value', + * const res = await compute.instanceGroupManagerResizeRequests.get({ + * // The name of the managed instance group. + * // Name should conform to RFC1035 or be a resource ID. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone - * // where the instance group is located. + * // The name of the resize request. + * // Name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * // Name of the href="/compute/docs/regions-zones/#available"\>zone + * // scoping this request. Name should conform to RFC1035. * zone: 'placeholder-value', * }); * console.log(res.data); @@ -99636,16 +97045,17 @@ export namespace compute_preview { * // { * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "instances": [], * // "kind": "my_kind", * // "name": "my_name", - * // "namedPorts": [], - * // "network": "my_network", * // "region": "my_region", + * // "requestedRunDuration": {}, + * // "resizeBy": 0, * // "selfLink": "my_selfLink", - * // "size": 0, - * // "subnetwork": "my_subnetwork", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, * // "zone": "my_zone" * // } * } @@ -99663,52 +97073,60 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instancegroups$Get, + params: Params$Resource$Instancegroupmanagerresizerequests$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instancegroups$Get, + params?: Params$Resource$Instancegroupmanagerresizerequests$Get, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; get( - params: Params$Resource$Instancegroups$Get, + params: Params$Resource$Instancegroupmanagerresizerequests$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instancegroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Instancegroupmanagerresizerequests$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instancegroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Instancegroupmanagerresizerequests$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instancegroups$Get - | BodyResponseCallback + | Params$Resource$Instancegroupmanagerresizerequests$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Get; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Get; + params = {} as Params$Resource$Instancegroupmanagerresizerequests$Get; options = {}; } @@ -99723,7 +97141,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -99731,23 +97149,35 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates an instance group in the specified project using the - * parameters that are included in the request. + * Creates a new resize request that starts provisioning VMs immediately + * or queues VM creation. * @example * ```js * // Before running the sample: @@ -99779,7 +97209,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.insert({ + * const res = await compute.instanceGroupManagerResizeRequests.insert({ + * // The name of the managed instance group to which the resize request will + * // be added. + * // Name should conform to RFC1035 or be a resource ID. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -99797,8 +97231,9 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where you want to create the instance group. + * // The name of thezone where the managed + * // instance group is located and where the resize request will be created. + * // Name should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata @@ -99807,16 +97242,17 @@ export namespace compute_preview { * // { * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "instances": [], * // "kind": "my_kind", * // "name": "my_name", - * // "namedPorts": [], - * // "network": "my_network", * // "region": "my_region", + * // "requestedRunDuration": {}, + * // "resizeBy": 0, * // "selfLink": "my_selfLink", - * // "size": 0, - * // "subnetwork": "my_subnetwork", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, * // "zone": "my_zone" * // } * }, @@ -99828,6 +97264,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -99870,31 +97307,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instancegroups$Insert, + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instancegroups$Insert, + params?: Params$Resource$Instancegroupmanagerresizerequests$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instancegroups$Insert, + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instancegroups$Insert, + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instancegroups$Insert, + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instancegroups$Insert + | Params$Resource$Instancegroupmanagerresizerequests$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -99909,12 +97346,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Insert; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Insert; + params = + {} as Params$Resource$Instancegroupmanagerresizerequests$Insert; options = {}; } @@ -99929,7 +97367,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -99937,8 +97375,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -99952,12 +97390,8 @@ export namespace compute_preview { } /** - * Retrieves the list of zonal instance group resources contained within the - * specified zone. - * - * For managed instance groups, use theinstanceGroupManagers - * or regionInstanceGroupManagers - * methods instead. + * Retrieves a list of resize requests that are contained in the + * managed instance group. * @example * ```js * // Before running the sample: @@ -99990,7 +97424,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.list({ + * const res = await compute.instanceGroupManagerResizeRequests.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -100050,6 +97484,8 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // The name of the managed instance group. The name should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -100075,8 +97511,8 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone - * // where the instance group is located. + * // The name of thezone where the managed + * // instance group is located. The name should conform to RFC1035. * zone: 'placeholder-value', * }); * console.log(res.data); @@ -100105,52 +97541,60 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Instancegroups$List, + params: Params$Resource$Instancegroupmanagerresizerequests$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Instancegroups$List, + params?: Params$Resource$Instancegroupmanagerresizerequests$List, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; list( - params: Params$Resource$Instancegroups$List, + params: Params$Resource$Instancegroupmanagerresizerequests$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instancegroups$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Instancegroupmanagerresizerequests$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instancegroups$List, - callback: BodyResponseCallback + params: Params$Resource$Instancegroupmanagerresizerequests$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Instancegroups$List - | BodyResponseCallback + | Params$Resource$Instancegroupmanagerresizerequests$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$List; + {}) as Params$Resource$Instancegroupmanagerresizerequests$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$List; + params = {} as Params$Resource$Instancegroupmanagerresizerequests$List; options = {}; } @@ -100165,7 +97609,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -100173,58 +97617,516 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Cancel extends StandardParameters { /** - * Lists the instances in the specified instance group. - * The orderBy query parameter is not supported. - * The filter query parameter is supported, but only for - * expressions that use `eq` (equal) or `ne` (not equal) operators. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * The name of the managed instance group. + * The name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the resize request to cancel. + * The name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Delete extends StandardParameters { + /** + * The name of the managed instance group. + * The name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Do the magic - * const res = await compute.instanceGroups.listInstances({ + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the resize request to delete. + * The name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Get extends StandardParameters { + /** + * The name of the managed instance group. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the resize request. + * Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * Name of the href="/compute/docs/regions-zones/#available"\>zone + * scoping this request. Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Insert extends StandardParameters { + /** + * The name of the managed instance group to which the resize request will + * be added. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located and where the resize request will be created. + * Name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagerResizeRequest; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the managed instance group. The name should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + + export class Resource$Instancegroupmanagers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Flags the specified instances to be removed from the + * managed instance group. Abandoning an instance does not delete the + * instance, but it does remove the instance from any target pools that are + * applied by the managed instance group. This method reduces thetargetSize of the managed instance group by the + * number of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have + * not yet been removed from the group. You must separately verify the + * status of the abandoning action with thelistmanagedinstances + * method. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instanceGroupManagers.abandonInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, + options: StreamMethodOptions + ): Promise>; + abandonInstances( + params?: Params$Resource$Instancegroupmanagers$Abandoninstances, + options?: MethodOptions + ): Promise>; + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, + callback: BodyResponseCallback + ): void; + abandonInstances(callback: BodyResponseCallback): void; + abandonInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Abandoninstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Abandoninstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Abandoninstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of managed instance groups and groups them by zone. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instanceGroupManagers.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -100284,9 +98186,14 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // The name of the instance group from which you want to generate a list - * // of included instances. - * instanceGroup: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -100312,15 +98219,181 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone - * // where the instance group is located. + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Instancegroupmanagers$Aggregatedlist, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/aggregated/instanceGroupManagers' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Applies changes to selected instances on the managed instance group. + * This method can be used to apply new overrides and/or new versions. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instanceGroupManagers.applyUpdatesToInstances({ + * // The name of the managed instance group, should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of thezone + * // where the managed instance group is located. Should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instanceState": "my_instanceState" + * // "allInstances": false, + * // "instances": [], + * // "minimalAction": "my_minimalAction", + * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" * // } * }, * }); @@ -100328,12 +98401,36 @@ export namespace compute_preview { * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -100349,57 +98446,55 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listInstances( - params: Params$Resource$Instancegroups$Listinstances, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options: StreamMethodOptions ): Promise>; - listInstances( - params?: Params$Resource$Instancegroups$Listinstances, + applyUpdatesToInstances( + params?: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options?: MethodOptions - ): Promise>; - listInstances( - params: Params$Resource$Instancegroups$Listinstances, + ): Promise>; + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listInstances( - params: Params$Resource$Instancegroups$Listinstances, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listInstances( - params: Params$Resource$Instancegroups$Listinstances, - callback: BodyResponseCallback + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + callback: BodyResponseCallback ): void; - listInstances( - callback: BodyResponseCallback + applyUpdatesToInstances( + callback: BodyResponseCallback ): void; - listInstances( + applyUpdatesToInstances( paramsOrCallback?: - | Params$Resource$Instancegroups$Listinstances - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Applyupdatestoinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Listinstances; + {}) as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Listinstances; + params = + {} as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; options = {}; } @@ -100414,7 +98509,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -100422,28 +98517,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Removes one or more instances from the specified instance group, but does - * not delete those instances. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration before the VM instance is removed or deleted. + * Creates instances with per-instance configurations in this managed instance + * group. Instances are created using the current instance template. Thecreate instances operation is marked DONE if thecreateInstances request is successful. The underlying actions + * take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances + * method. * @example * ```js * // Before running the sample: @@ -100475,10 +98567,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.removeInstances({ - * // The name of the instance group where the specified instances will be - * // removed. - * instanceGroup: 'placeholder-value', + * const res = await compute.instanceGroupManagers.createInstances({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -100489,15 +98581,15 @@ export namespace compute_preview { * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // request ID was received, and if so, will ignore the second request. * // * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata @@ -100515,6 +98607,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -100556,32 +98649,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeInstances( - params: Params$Resource$Instancegroups$Removeinstances, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, options: StreamMethodOptions ): Promise>; - removeInstances( - params?: Params$Resource$Instancegroups$Removeinstances, + createInstances( + params?: Params$Resource$Instancegroupmanagers$Createinstances, options?: MethodOptions ): Promise>; - removeInstances( - params: Params$Resource$Instancegroups$Removeinstances, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeInstances( - params: Params$Resource$Instancegroups$Removeinstances, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeInstances( - params: Params$Resource$Instancegroups$Removeinstances, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, callback: BodyResponseCallback ): void; - removeInstances(callback: BodyResponseCallback): void; - removeInstances( + createInstances(callback: BodyResponseCallback): void; + createInstances( paramsOrCallback?: - | Params$Resource$Instancegroups$Removeinstances + | Params$Resource$Instancegroupmanagers$Createinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -100596,12 +98689,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Removeinstances; + {}) as Params$Resource$Instancegroupmanagers$Createinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Removeinstances; + params = {} as Params$Resource$Instancegroupmanagers$Createinstances; options = {}; } @@ -100616,7 +98709,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -100624,8 +98717,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -100639,7 +98732,10 @@ export namespace compute_preview { } /** - * Sets the named ports for the specified instance group. + * Deletes the specified managed instance group and all of the instances + * in that group. Note that the instance group must not belong to a + * backend service. Read + * Deleting an instance group for more information. * @example * ```js * // Before running the sample: @@ -100671,9 +98767,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.setNamedPorts({ - * // The name of the instance group where the named ports are updated. - * instanceGroup: 'placeholder-value', + * const res = await compute.instanceGroupManagers.delete({ + * // The name of the managed instance group to delete. + * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -100691,18 +98790,9 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. + * // The name of thezone where the managed + * // instance group is located. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "fingerprint": "my_fingerprint", - * // "namedPorts": [] - * // } - * }, * }); * console.log(res.data); * @@ -100711,6 +98801,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -100752,32 +98843,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setNamedPorts( - params: Params$Resource$Instancegroups$Setnamedports, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, options: StreamMethodOptions ): Promise>; - setNamedPorts( - params?: Params$Resource$Instancegroups$Setnamedports, + delete( + params?: Params$Resource$Instancegroupmanagers$Delete, options?: MethodOptions ): Promise>; - setNamedPorts( - params: Params$Resource$Instancegroups$Setnamedports, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setNamedPorts( - params: Params$Resource$Instancegroups$Setnamedports, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setNamedPorts( - params: Params$Resource$Instancegroups$Setnamedports, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, callback: BodyResponseCallback ): void; - setNamedPorts(callback: BodyResponseCallback): void; - setNamedPorts( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroups$Setnamedports + | Params$Resource$Instancegroupmanagers$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -100792,12 +98883,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Setnamedports; + {}) as Params$Resource$Instancegroupmanagers$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Setnamedports; + params = {} as Params$Resource$Instancegroupmanagers$Delete; options = {}; } @@ -100812,16 +98903,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -100835,7 +98926,21 @@ export namespace compute_preview { } /** - * Returns permissions that a caller has on the specified resource. + * Flags the specified instances in the managed instance group for immediate + * deletion. The instances are also removed from any target + * pools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of + * instances that you delete. This operation is marked as DONE + * when the action is scheduled even if the instances are still being deleted. + * You must separately verify the status of the deleting action + * with thelistmanagedinstances + * method. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -100859,7 +98964,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -100868,20 +98972,39 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.testIamPermissions({ + * const res = await compute.instanceGroupManagers.deleteInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "instances": [], + * // "skipInstancesOnValidationError": false * // } * }, * }); @@ -100889,7 +99012,36 @@ export namespace compute_preview { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -100905,56 +99057,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Instancegroups$Testiampermissions, + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Instancegroups$Testiampermissions, + deleteInstances( + params?: Params$Resource$Instancegroupmanagers$Deleteinstances, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Instancegroups$Testiampermissions, + ): Promise>; + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Instancegroups$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Instancegroups$Testiampermissions, - callback: BodyResponseCallback + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, + callback: BodyResponseCallback ): void; - testIamPermissions( + deleteInstances(callback: BodyResponseCallback): void; + deleteInstances( paramsOrCallback?: - | Params$Resource$Instancegroups$Testiampermissions - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Deleteinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Testiampermissions; + {}) as Params$Resource$Instancegroupmanagers$Deleteinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Testiampermissions; + params = {} as Params$Resource$Instancegroupmanagers$Deleteinstances; options = {}; } @@ -100969,7 +99117,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -100977,572 +99125,39 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Instancegroups$Addinstances extends StandardParameters { - /** - * The name of the instance group where you are adding instances. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Deletes selected per-instance configurations for the managed instance + * group. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupsAddInstancesRequest; - } - export interface Params$Resource$Instancegroups$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instancegroups$Delete extends StandardParameters { - /** - * The name of the instance group to delete. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroups$Get extends StandardParameters { - /** - * The name of the instance group. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroups$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone - * where you want to create the instance group. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroup; - } - export interface Params$Resource$Instancegroups$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone - * where the instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroups$Listinstances extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The name of the instance group from which you want to generate a list - * of included instances. - */ - instanceGroup?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupsListInstancesRequest; - } - export interface Params$Resource$Instancegroups$Removeinstances extends StandardParameters { - /** - * The name of the instance group where the specified instances will be - * removed. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupsRemoveInstancesRequest; - } - export interface Params$Resource$Instancegroups$Setnamedports extends StandardParameters { - /** - * The name of the instance group where the named ports are updated. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupsSetNamedPortsRequest; - } - export interface Params$Resource$Instancegroups$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Instances { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Adds an access config to an instance's network interface. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); * * async function main() { * const auth = new google.auth.GoogleAuth({ @@ -101558,46 +99173,24 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.addAccessConfig({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the network interface to add to this instance. - * networkInterface: 'placeholder-value', + * const res = await compute.instanceGroupManagers.deletePerInstanceConfigs({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of thezone + * // where the managed instance + * // group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "externalIpv6": "my_externalIpv6", - * // "externalIpv6PrefixLength": 0, - * // "ipCollection": "my_ipCollection", - * // "kind": "my_kind", - * // "name": "my_name", - * // "natIP": "my_natIP", - * // "networkTier": "my_networkTier", - * // "publicPtrDomainName": "my_publicPtrDomainName", - * // "securityPolicy": "my_securityPolicy", - * // "setPublicPtr": false, - * // "type": "my_type" + * // "names": [] * // } * }, * }); @@ -101608,6 +99201,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -101649,32 +99243,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addAccessConfig( - params: Params$Resource$Instances$Addaccessconfig, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options: StreamMethodOptions ): Promise>; - addAccessConfig( - params?: Params$Resource$Instances$Addaccessconfig, + deletePerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options?: MethodOptions ): Promise>; - addAccessConfig( - params: Params$Resource$Instances$Addaccessconfig, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addAccessConfig( - params: Params$Resource$Instances$Addaccessconfig, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addAccessConfig( - params: Params$Resource$Instances$Addaccessconfig, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, callback: BodyResponseCallback ): void; - addAccessConfig(callback: BodyResponseCallback): void; - addAccessConfig( + deletePerInstanceConfigs( + callback: BodyResponseCallback + ): void; + deletePerInstanceConfigs( paramsOrCallback?: - | Params$Resource$Instances$Addaccessconfig + | Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -101689,12 +99285,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Addaccessconfig; + {}) as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Addaccessconfig; + params = + {} as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; options = {}; } @@ -101709,7 +99306,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -101717,8 +99314,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterface'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -101732,7 +99329,7 @@ export namespace compute_preview { } /** - * Adds one dynamic network interface to an active instance. + * Returns all of the details about the specified managed instance group. * @example * ```js * // Before running the sample: @@ -101756,6 +99353,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -101764,91 +99362,52 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.addNetworkInterface({ - * // The instance name for this request stored as resource_id. - * // Name should conform to RFC1035 or be an unsigned long integer. - * instance: 'placeholder-value', + * const res = await compute.instanceGroupManagers.get({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accessConfigs": [], - * // "aliasIpRanges": [], - * // "aliasIpv6Ranges": [], - * // "enableVpcScopedDns": false, - * // "fingerprint": "my_fingerprint", - * // "igmpQuery": "my_igmpQuery", - * // "internalIpv6PrefixLength": 0, - * // "ipv6AccessConfigs": [], - * // "ipv6AccessType": "my_ipv6AccessType", - * // "ipv6Address": "my_ipv6Address", - * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", - * // "networkIP": "my_networkIP", - * // "nicType": "my_nicType", - * // "parentNicName": "my_parentNicName", - * // "queueCount": 0, - * // "serviceClassId": "my_serviceClassId", - * // "stackType": "my_stackType", - * // "subnetwork": "my_subnetwork", - * // "vlan": 0 - * // } - * }, + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "distributionPolicy": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "namedPorts": [], * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], * // "zone": "my_zone" * // } * } @@ -101865,52 +99424,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addNetworkInterface( - params: Params$Resource$Instances$Addnetworkinterface, + get( + params: Params$Resource$Instancegroupmanagers$Get, options: StreamMethodOptions ): Promise>; - addNetworkInterface( - params?: Params$Resource$Instances$Addnetworkinterface, + get( + params?: Params$Resource$Instancegroupmanagers$Get, options?: MethodOptions - ): Promise>; - addNetworkInterface( - params: Params$Resource$Instances$Addnetworkinterface, + ): Promise>; + get( + params: Params$Resource$Instancegroupmanagers$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addNetworkInterface( - params: Params$Resource$Instances$Addnetworkinterface, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagers$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addNetworkInterface( - params: Params$Resource$Instances$Addnetworkinterface, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagers$Get, + callback: BodyResponseCallback ): void; - addNetworkInterface(callback: BodyResponseCallback): void; - addNetworkInterface( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instances$Addnetworkinterface - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Addnetworkinterface; + {}) as Params$Resource$Instancegroupmanagers$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Addnetworkinterface; + params = {} as Params$Resource$Instancegroupmanagers$Get; options = {}; } @@ -101925,32 +99486,40 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addNetworkInterface' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Adds existing resource policies to an instance. You can only add one - * policy right now which will be applied to this instance for scheduling live - * migrations. + * Creates a managed instance group using the information that you specify + * in the request. After the group is created, instances in the group are + * created using the specified instance template. + * This operation is marked as DONE when the group is created + * even if the instances in the group have not yet been created. You + * must separately verify the status of the individual instances with thelistmanagedinstances + * method. + * + * A managed instance group can have up to 1000 VM instances per group. Please + * contact Cloud Support if you need an increase in + * this limit. * @example * ```js * // Before running the sample: @@ -101982,9 +99551,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.addResourcePolicies({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroupManagers.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -102002,14 +99569,47 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone + * // where you want to create the managed instance group. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "resourcePolicies": [] + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "name": "my_name", + * // "namedPorts": [], + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" * // } * }, * }); @@ -102020,6 +99620,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -102061,32 +99662,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addResourcePolicies( - params: Params$Resource$Instances$Addresourcepolicies, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: StreamMethodOptions ): Promise>; - addResourcePolicies( - params?: Params$Resource$Instances$Addresourcepolicies, + insert( + params?: Params$Resource$Instancegroupmanagers$Insert, options?: MethodOptions ): Promise>; - addResourcePolicies( - params: Params$Resource$Instances$Addresourcepolicies, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addResourcePolicies( - params: Params$Resource$Instances$Addresourcepolicies, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addResourcePolicies( - params: Params$Resource$Instances$Addresourcepolicies, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, callback: BodyResponseCallback ): void; - addResourcePolicies(callback: BodyResponseCallback): void; - addResourcePolicies( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instances$Addresourcepolicies + | Params$Resource$Instancegroupmanagers$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -102101,12 +99702,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Addresourcepolicies; + {}) as Params$Resource$Instancegroupmanagers$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Addresourcepolicies; + params = {} as Params$Resource$Instancegroupmanagers$Insert; options = {}; } @@ -102121,7 +99722,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -102129,8 +99730,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -102144,14 +99745,8 @@ export namespace compute_preview { } /** - * Retrieves an aggregated list of all of the instances in your project - * across all regions and zones. - * - * The performance of this method degrades when a filter is specified on a - * project that has a very large number of instances. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Retrieves a list of managed instance groups that are contained within the + * specified project and zone. * @example * ```js * // Before running the sample: @@ -102184,7 +99779,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.aggregatedList({ + * const res = await compute.instanceGroupManagers.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -102244,14 +99839,6 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -102277,20 +99864,19 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -102307,56 +99893,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Instances$Aggregatedlist, + list( + params: Params$Resource$Instancegroupmanagers$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Instances$Aggregatedlist, + list( + params?: Params$Resource$Instancegroupmanagers$List, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Instances$Aggregatedlist, + ): Promise>; + list( + params: Params$Resource$Instancegroupmanagers$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Instances$Aggregatedlist, + list( + params: Params$Resource$Instancegroupmanagers$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instances$Aggregatedlist, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagers$List, + callback: BodyResponseCallback ): void; - aggregatedList( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instances$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Aggregatedlist; + {}) as Params$Resource$Instancegroupmanagers$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Aggregatedlist; + params = {} as Params$Resource$Instancegroupmanagers$List; options = {}; } @@ -102370,7 +99954,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/instances' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -102378,25 +99963,24 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Attaches an existing Disk resource to an instance. You must first - * create the disk before you can attach it. It is not possible to create - * and attach a disk at the same time. For more information, readAdding a - * persistent disk to your instance. + * Lists all errors thrown by actions on instances for a given managed + * instance group. The filter and orderBy query + * parameters are not supported. * @example * ```js * // Before running the sample: @@ -102420,6 +100004,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -102428,91 +100013,107 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.attachDisk({ - * // Whether to force attach the regional disk even if it's currently attached - * // to another instance. If you try to force attach a zonal disk to an - * // instance, you will receive an error. - * forceAttach: 'placeholder-value', - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.instanceGroupManagers.listErrors({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "architecture": "my_architecture", - * // "autoDelete": false, - * // "boot": false, - * // "deviceName": "my_deviceName", - * // "diskEncryptionKey": {}, - * // "diskSizeGb": "my_diskSizeGb", - * // "forceAttach": false, - * // "guestOsFeatures": [], - * // "index": 0, - * // "initializeParams": {}, - * // "interface": "my_interface", - * // "kind": "my_kind", - * // "licenses": [], - * // "mode": "my_mode", - * // "savedState": "my_savedState", - * // "shieldedInstanceInitialState": {}, - * // "source": "my_source", - * // "type": "my_type" - * // } - * }, - * }); + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the managed instance group. + * // It must be a string that meets the requirements in RFC1035, or an + * // unsigned long integer: must match regexp pattern: + * // (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of thezone where the managed + * // instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "items": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -102528,52 +100129,61 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - attachDisk( - params: Params$Resource$Instances$Attachdisk, + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, options: StreamMethodOptions ): Promise>; - attachDisk( - params?: Params$Resource$Instances$Attachdisk, + listErrors( + params?: Params$Resource$Instancegroupmanagers$Listerrors, options?: MethodOptions - ): Promise>; - attachDisk( - params: Params$Resource$Instances$Attachdisk, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachDisk( - params: Params$Resource$Instances$Attachdisk, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - attachDisk( - params: Params$Resource$Instances$Attachdisk, - callback: BodyResponseCallback + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, + callback: BodyResponseCallback ): void; - attachDisk(callback: BodyResponseCallback): void; - attachDisk( + listErrors( + callback: BodyResponseCallback + ): void; + listErrors( paramsOrCallback?: - | Params$Resource$Instances$Attachdisk - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Listerrors + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Attachdisk; + {}) as Params$Resource$Instancegroupmanagers$Listerrors; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Attachdisk; + params = {} as Params$Resource$Instancegroupmanagers$Listerrors; options = {}; } @@ -102588,32 +100198,40 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/attachDisk' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listErrors' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates multiple instances. Count specifies the number of instances to - * create. For more information, seeAbout bulk - * creation of VMs. + * Lists all of the instances in the managed instance group. Each instance + * in the list has a currentAction, which indicates the action + * that the managed instance group is performing on the instance. For example, + * if the group is still creating an instance, the currentAction + * is CREATING. If a previous action failed, the + * list displays the errors for that failed action. The orderBy + * query parameter is not supported. The `pageToken` query parameter is + * supported only if the group's `listManagedInstancesResults` field is set + * to `PAGINATED`. * @example * ```js * // Before running the sample: @@ -102637,6 +100255,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -102645,75 +100264,346 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.bulkInsert({ + * const res = await compute.instanceGroupManagers.listManagedInstances({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "managedInstances": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options: StreamMethodOptions + ): Promise>; + listManagedInstances( + params?: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + callback: BodyResponseCallback + ): void; + listManagedInstances( + callback: BodyResponseCallback + ): void; + listManagedInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Listmanagedinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Listmanagedinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Listmanagedinstances; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists all of the per-instance configurations defined for the managed + * instance group. The orderBy query parameter is not supported. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instanceGroupManagers.listPerInstanceConfigs({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "count": "my_count", - * // "instanceFlexibilityPolicy": {}, - * // "instanceProperties": {}, - * // "locationPolicy": {}, - * // "minCount": "my_minCount", - * // "namePattern": "my_namePattern", - * // "perInstanceProperties": {}, - * // "sourceInstanceTemplate": "my_sourceInstanceTemplate" - * // } - * }, + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the managed instance group. It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "items": [], + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} * // } * } * @@ -102729,52 +100619,62 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkInsert( - params: Params$Resource$Instances$Bulkinsert, + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, options: StreamMethodOptions ): Promise>; - bulkInsert( - params?: Params$Resource$Instances$Bulkinsert, + listPerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, options?: MethodOptions - ): Promise>; - bulkInsert( - params: Params$Resource$Instances$Bulkinsert, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkInsert( - params: Params$Resource$Instances$Bulkinsert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - bulkInsert( - params: Params$Resource$Instances$Bulkinsert, - callback: BodyResponseCallback + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + callback: BodyResponseCallback ): void; - bulkInsert(callback: BodyResponseCallback): void; - bulkInsert( + listPerInstanceConfigs( + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( paramsOrCallback?: - | Params$Resource$Instances$Bulkinsert - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Listperinstanceconfigs + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Bulkinsert; + {}) as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Bulkinsert; + params = + {} as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; options = {}; } @@ -102789,7 +100689,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/bulkInsert' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -102797,23 +100697,38 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specified Instance resource. For more information, seeDeleting - * an instance. + * Updates a managed instance group using the information that you specify + * in the request. + * This operation is marked as DONE when the group is patched + * even if the instances in the group are still in the process of being + * patched. You must separately verify the status of the individual instances + * with thelistManagedInstances + * method. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * + * If you update your group to specify a new template or instance + * configuration, it's possible that your intended specification for each VM + * in the group is different from the current state of that VM. To learn how + * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in + * a MIG. * @example * ```js * // Before running the sample: @@ -102845,11 +100760,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.delete({ - * // Name of the instance resource to delete. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // If set to true, Graceful Shutdown is skipped. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.instanceGroupManagers.patch({ + * // The name of the instance group manager. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -102867,8 +100780,49 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone where + * // you want to create the managed instance group. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "name": "my_name", + * // "namedPorts": [], + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * @@ -102877,6 +100831,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -102918,32 +100873,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Instances$Delete, + patch( + params: Params$Resource$Instancegroupmanagers$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Instances$Delete, + patch( + params?: Params$Resource$Instancegroupmanagers$Patch, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Instances$Delete, + patch( + params: Params$Resource$Instancegroupmanagers$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instances$Delete, + patch( + params: Params$Resource$Instancegroupmanagers$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instances$Delete, + patch( + params: Params$Resource$Instancegroupmanagers$Patch, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instances$Delete + | Params$Resource$Instancegroupmanagers$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -102957,12 +100912,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Delete; + params = {} as Params$Resource$Instancegroupmanagers$Patch; options = {}; } @@ -102977,16 +100933,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -103000,7 +100956,9 @@ export namespace compute_preview { } /** - * Deletes an access config from an instance's network interface. + * Inserts or patches per-instance configurations for the managed instance + * group. perInstanceConfig.name serves as a key used to + * distinguish whether to perform insert or patch. * @example * ```js * // Before running the sample: @@ -103032,13 +100990,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.deleteAccessConfig({ - * // The name of the access config to delete. - * accessConfig: 'placeholder-value', - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the network interface. - * networkInterface: 'placeholder-value', + * const res = await compute.instanceGroupManagers.patchPerInstanceConfigs({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -103056,8 +101011,18 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "perInstanceConfigs": [] + * // } + * }, * }); * console.log(res.data); * @@ -103066,6 +101031,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -103107,32 +101073,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deleteAccessConfig( - params: Params$Resource$Instances$Deleteaccessconfig, + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, options: StreamMethodOptions ): Promise>; - deleteAccessConfig( - params?: Params$Resource$Instances$Deleteaccessconfig, + patchPerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, options?: MethodOptions ): Promise>; - deleteAccessConfig( - params: Params$Resource$Instances$Deleteaccessconfig, + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteAccessConfig( - params: Params$Resource$Instances$Deleteaccessconfig, + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteAccessConfig( - params: Params$Resource$Instances$Deleteaccessconfig, + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, callback: BodyResponseCallback ): void; - deleteAccessConfig(callback: BodyResponseCallback): void; - deleteAccessConfig( + patchPerInstanceConfigs( + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( paramsOrCallback?: - | Params$Resource$Instances$Deleteaccessconfig + | Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103147,12 +101115,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Deleteaccessconfig; + {}) as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Deleteaccessconfig; + params = + {} as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; options = {}; } @@ -103167,7 +101136,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -103175,14 +101144,8 @@ export namespace compute_preview { options ), params, - requiredParams: [ - 'project', - 'zone', - 'instance', - 'accessConfig', - 'networkInterface', - ], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -103196,11 +101159,19 @@ export namespace compute_preview { } /** - * Deletes one dynamic network interface from an active instance. - * InstancesDeleteNetworkInterfaceRequest indicates: - * - instance from which to delete, using project+zone+resource_id fields; - * - dynamic network interface to be deleted, using network_interface_name - * field; + * Flags the specified VM instances in the managed instance group to be + * immediately recreated. Each instance is recreated using the group's current + * configuration. This operation is marked as DONE when the flag + * is set even if the instances have not yet been recreated. You must + * separately verify the status of each instance by checking itscurrentAction field; for more information, see Checking + * the status of managed instances. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -103232,12 +101203,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.deleteNetworkInterface({ - * // The instance name for this request stored as resource_id. - * // Name should conform to RFC1035 or be an unsigned long integer. - * instance: 'placeholder-value', - * // The name of the dynamic network interface to be deleted from the instance. - * networkInterfaceName: 'placeholder-value', + * const res = await compute.instanceGroupManagers.recreateInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance recreation even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -103255,8 +101226,17 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, * }); * console.log(res.data); * @@ -103265,6 +101245,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -103306,34 +101287,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deleteNetworkInterface( - params: Params$Resource$Instances$Deletenetworkinterface, + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, options: StreamMethodOptions ): Promise>; - deleteNetworkInterface( - params?: Params$Resource$Instances$Deletenetworkinterface, + recreateInstances( + params?: Params$Resource$Instancegroupmanagers$Recreateinstances, options?: MethodOptions ): Promise>; - deleteNetworkInterface( - params: Params$Resource$Instances$Deletenetworkinterface, + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteNetworkInterface( - params: Params$Resource$Instances$Deletenetworkinterface, + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteNetworkInterface( - params: Params$Resource$Instances$Deletenetworkinterface, - callback: BodyResponseCallback - ): void; - deleteNetworkInterface( + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, callback: BodyResponseCallback ): void; - deleteNetworkInterface( + recreateInstances(callback: BodyResponseCallback): void; + recreateInstances( paramsOrCallback?: - | Params$Resource$Instances$Deletenetworkinterface + | Params$Resource$Instancegroupmanagers$Recreateinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103348,12 +101327,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Deletenetworkinterface; + {}) as Params$Resource$Instancegroupmanagers$Recreateinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Deletenetworkinterface; + params = {} as Params$Resource$Instancegroupmanagers$Recreateinstances; options = {}; } @@ -103368,7 +101347,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteNetworkInterface' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -103376,8 +101355,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterfaceName'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -103391,7 +101370,29 @@ export namespace compute_preview { } /** - * Detaches a disk from an instance. + * Resizes the managed instance group. If you increase the size, the group + * creates new instances using the current instance template. If you decrease + * the size, the group deletes instances. The resize operation is markedDONE when the resize actions are scheduled even if the group + * has not yet added or deleted any instances. You must separately + * verify the status of the creating or deleting + * actions with thelistmanagedinstances + * method. + * + * When resizing down, the instance group arbitrarily chooses the order in + * which VMs are deleted. The group takes into account some VM attributes when + * making the selection including: + * + * + The status of the VM instance. + * + The health of the VM instance. + * + The instance template version the VM is based on. + * + For regional managed instance groups, the location of the VM instance. + * + * This list is subject to change. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. * @example * ```js * // Before running the sample: @@ -103423,12 +101424,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.detachDisk({ - * // The device name of the disk to detach. Make a get() request on - * // the instance to view currently attached disks and device names. - * deviceName: 'placeholder-value', - * // Instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroupManagers.resize({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -103446,8 +101444,13 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The number of running instances that the managed instance group should + * // maintain at any given time. The group automatically adds or removes + * // instances to maintain the number of instances specified by this parameter. + * size: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -103456,6 +101459,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -103497,32 +101501,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - detachDisk( - params: Params$Resource$Instances$Detachdisk, + resize( + params: Params$Resource$Instancegroupmanagers$Resize, options: StreamMethodOptions ): Promise>; - detachDisk( - params?: Params$Resource$Instances$Detachdisk, + resize( + params?: Params$Resource$Instancegroupmanagers$Resize, options?: MethodOptions ): Promise>; - detachDisk( - params: Params$Resource$Instances$Detachdisk, + resize( + params: Params$Resource$Instancegroupmanagers$Resize, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachDisk( - params: Params$Resource$Instances$Detachdisk, + resize( + params: Params$Resource$Instancegroupmanagers$Resize, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachDisk( - params: Params$Resource$Instances$Detachdisk, + resize( + params: Params$Resource$Instancegroupmanagers$Resize, callback: BodyResponseCallback ): void; - detachDisk(callback: BodyResponseCallback): void; - detachDisk( + resize(callback: BodyResponseCallback): void; + resize( paramsOrCallback?: - | Params$Resource$Instances$Detachdisk + | Params$Resource$Instancegroupmanagers$Resize | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103537,12 +101541,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Detachdisk; + {}) as Params$Resource$Instancegroupmanagers$Resize; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Detachdisk; + params = {} as Params$Resource$Instancegroupmanagers$Resize; options = {}; } @@ -103557,7 +101561,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/detachDisk' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -103565,8 +101569,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance', 'deviceName'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager', 'size'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { @@ -103580,7 +101584,22 @@ export namespace compute_preview { } /** - * Returns the specified Instance resource. + * Flags the specified instances in the managed instance group to be + * resumed. This method increases thetargetSize and decreases the targetSuspendedSize + * of the managed instance group by the number of instances that you resume. + * The resumeInstances operation is marked DONE if + * the resumeInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances + * method. + * + * In this request, you can only specify instances that are suspended. For + * example, if an instance was previously suspended using the suspendInstances + * method, it can be resumed using the resumeInstances method. + * + * If a health check is attached to the managed instance group, the specified + * instances will be verified as healthy after they are resumed. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -103604,7 +101623,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -103613,66 +101631,71 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.get({ - * // Name of the instance resource to return. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroupManagers.resumeInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "advancedMachineFeatures": {}, - * // "canIpForward": false, - * // "confidentialInstanceConfig": {}, - * // "cpuPlatform": "my_cpuPlatform", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deletionProtection": false, * // "description": "my_description", - * // "disks": [], - * // "displayDevice": {}, - * // "fingerprint": "my_fingerprint", - * // "guestAccelerators": [], - * // "hostname": "my_hostname", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "instanceEncryptionKey": {}, - * // "keyRevocationActionType": "my_keyRevocationActionType", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastStartTimestamp": "my_lastStartTimestamp", - * // "lastStopTimestamp": "my_lastStopTimestamp", - * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", - * // "localSsdEncryptionMode": "my_localSsdEncryptionMode", - * // "machineType": "my_machineType", - * // "metadata": {}, - * // "minCpuPlatform": "my_minCpuPlatform", * // "name": "my_name", - * // "networkInterfaces": [], - * // "networkPerformanceConfig": {}, - * // "params": {}, - * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", - * // "reservationAffinity": {}, - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "scheduling": {}, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "serviceAccounts": [], - * // "shieldedInstanceConfig": {}, - * // "shieldedInstanceIntegrityPolicy": {}, - * // "sourceMachineImage": "my_sourceMachineImage", - * // "sourceMachineImageEncryptionKey": {}, - * // "startRestricted": false, + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", * // "statusMessage": "my_statusMessage", - * // "tags": {}, - * // "workloadIdentityConfig": {}, + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -103689,51 +101712,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Instances$Get, + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instances$Get, + resumeInstances( + params?: Params$Resource$Instancegroupmanagers$Resumeinstances, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Instances$Get, + ): Promise>; + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instances$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instances$Get, - callback: BodyResponseCallback + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + resumeInstances(callback: BodyResponseCallback): void; + resumeInstances( paramsOrCallback?: - | Params$Resource$Instances$Get - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Resumeinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Resumeinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Get; + params = {} as Params$Resource$Instancegroupmanagers$Resumeinstances; options = {}; } @@ -103748,30 +101772,32 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resumeInstances' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns effective firewalls applied to an interface of the instance. + * Specifies the instance template to use when creating new instances in this + * group. The templates for existing instances in the group do not change + * unless you run recreateInstances, runapplyUpdatesToInstances, or set the group'supdatePolicy.type to PROACTIVE. * @example * ```js * // Before running the sample: @@ -103795,7 +101821,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -103804,23 +101829,72 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getEffectiveFirewalls({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // The name of the network interface to get the effective firewalls. - * networkInterface: 'placeholder-value', + * const res = await compute.instanceGroupManagers.setInstanceTemplate({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instanceTemplate": "my_instanceTemplate" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "firewallPolicys": [], - * // "firewalls": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -103836,61 +101910,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getEffectiveFirewalls( - params: Params$Resource$Instances$Geteffectivefirewalls, + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, options: StreamMethodOptions ): Promise>; - getEffectiveFirewalls( - params?: Params$Resource$Instances$Geteffectivefirewalls, + setInstanceTemplate( + params?: Params$Resource$Instancegroupmanagers$Setinstancetemplate, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getEffectiveFirewalls( - params: Params$Resource$Instances$Geteffectivefirewalls, + ): Promise>; + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - params: Params$Resource$Instances$Geteffectivefirewalls, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getEffectiveFirewalls( - params: Params$Resource$Instances$Geteffectivefirewalls, - callback: BodyResponseCallback + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - callback: BodyResponseCallback + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( + setInstanceTemplate(callback: BodyResponseCallback): void; + setInstanceTemplate( paramsOrCallback?: - | Params$Resource$Instances$Geteffectivefirewalls - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Setinstancetemplate + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Geteffectivefirewalls; + {}) as Params$Resource$Instancegroupmanagers$Setinstancetemplate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Geteffectivefirewalls; + params = + {} as Params$Resource$Instancegroupmanagers$Setinstancetemplate; options = {}; } @@ -103905,32 +101971,35 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterface'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Returns the specified guest attributes entry. + * Modifies the target pools to which all instances in this managed instance + * group are assigned. The target pools automatically apply to all of the + * instances in the managed instance group. This operation is markedDONE when you make the request even if the instances have not + * yet been added to their target pools. The change might take some time to + * apply to all of the instances in the group depending on the size of the + * group. * @example * ```js * // Before running the sample: @@ -103954,7 +102023,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -103963,29 +102031,73 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getGuestAttributes({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroupManagers.setTargetPools({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Specifies the guest attributes path to be queried. - * queryPath: 'placeholder-value', - * // Specifies the key for the guest attributes entry. - * variableKey: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "targetPools": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "queryPath": "my_queryPath", - * // "queryValue": {}, + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "variableKey": "my_variableKey", - * // "variableValue": "my_variableValue" + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -104001,55 +102113,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getGuestAttributes( - params: Params$Resource$Instances$Getguestattributes, + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, options: StreamMethodOptions ): Promise>; - getGuestAttributes( - params?: Params$Resource$Instances$Getguestattributes, + setTargetPools( + params?: Params$Resource$Instancegroupmanagers$Settargetpools, options?: MethodOptions - ): Promise>; - getGuestAttributes( - params: Params$Resource$Instances$Getguestattributes, + ): Promise>; + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getGuestAttributes( - params: Params$Resource$Instances$Getguestattributes, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getGuestAttributes( - params: Params$Resource$Instances$Getguestattributes, - callback: BodyResponseCallback + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getGuestAttributes( - callback: BodyResponseCallback + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + callback: BodyResponseCallback ): void; - getGuestAttributes( + setTargetPools(callback: BodyResponseCallback): void; + setTargetPools( paramsOrCallback?: - | Params$Resource$Instances$Getguestattributes - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Settargetpools + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getguestattributes; + {}) as Params$Resource$Instancegroupmanagers$Settargetpools; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getguestattributes; + params = {} as Params$Resource$Instancegroupmanagers$Settargetpools; options = {}; } @@ -104064,31 +102173,45 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Flags the specified instances in the managed instance group to be + * started. This method increases thetargetSize and decreases the targetStoppedSize + * of the managed instance group by the number of instances that you start. + * The startInstances operation is marked DONE if + * the startInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances + * method. + * + * In this request, you can only specify instances that are stopped. For + * example, if an instance was previously stopped using the stopInstances + * method, it can be started using the startInstances method. + * + * If a health check is attached to the managed instance group, the specified + * instances will be verified as healthy after they are started. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -104112,7 +102235,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -104121,25 +102243,72 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.instanceGroupManagers.startInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -104155,52 +102324,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Instances$Getiampolicy, + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Instances$Getiampolicy, + startInstances( + params?: Params$Resource$Instancegroupmanagers$Startinstances, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Instances$Getiampolicy, + ): Promise>; + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Instances$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Instances$Getiampolicy, - callback: BodyResponseCallback + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + startInstances(callback: BodyResponseCallback): void; + startInstances( paramsOrCallback?: - | Params$Resource$Instances$Getiampolicy - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Startinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getiampolicy; + {}) as Params$Resource$Instancegroupmanagers$Startinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getiampolicy; + params = {} as Params$Resource$Instancegroupmanagers$Startinstances; options = {}; } @@ -104215,30 +102384,54 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/startInstances' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the screenshot from the specified instance. + * Flags the specified instances in the managed instance group to be + * immediately stopped. You can only specify instances that are running in + * this request. This method reduces thetargetSize and increases the targetStoppedSize + * of the managed instance group by the number of instances that you stop. + * The stopInstances operation is marked DONE if + * the stopInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances + * method. + * + * If the standbyPolicy.initialDelaySec field is set, the group + * delays stopping the instances until initialDelaySec have + * passed from instance.creationTimestamp (that is, when the + * instance was created). This delay gives your application time to + * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there + * will be zero delay. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is stopped. + * + * Stopped instances can be started using the startInstances + * method. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -104262,7 +102455,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -104271,21 +102463,76 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getScreenshot({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroupManagers.stopInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance stopping even if it's + * // configured for the instances. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "forceStop": false, + * // "instances": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "contents": "my_contents", - * // "kind": "my_kind" + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -104301,52 +102548,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getScreenshot( - params: Params$Resource$Instances$Getscreenshot, + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, options: StreamMethodOptions ): Promise>; - getScreenshot( - params?: Params$Resource$Instances$Getscreenshot, + stopInstances( + params?: Params$Resource$Instancegroupmanagers$Stopinstances, options?: MethodOptions - ): Promise>; - getScreenshot( - params: Params$Resource$Instances$Getscreenshot, + ): Promise>; + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getScreenshot( - params: Params$Resource$Instances$Getscreenshot, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getScreenshot( - params: Params$Resource$Instances$Getscreenshot, - callback: BodyResponseCallback + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + callback: BodyResponseCallback ): void; - getScreenshot(callback: BodyResponseCallback): void; - getScreenshot( + stopInstances(callback: BodyResponseCallback): void; + stopInstances( paramsOrCallback?: - | Params$Resource$Instances$Getscreenshot - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Stopinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getscreenshot; + {}) as Params$Resource$Instancegroupmanagers$Stopinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getscreenshot; + params = {} as Params$Resource$Instancegroupmanagers$Stopinstances; options = {}; } @@ -104361,30 +102608,54 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/screenshot' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/stopInstances' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the last 1 MB of serial port output from the specified instance. + * Flags the specified instances in the managed instance group to be + * immediately suspended. You can only specify instances that are running in + * this request. This method reduces thetargetSize and increases the targetSuspendedSize + * of the managed instance group by the number of instances that you suspend. + * The suspendInstances operation is marked DONE if + * the suspendInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances + * method. + * + * If the standbyPolicy.initialDelaySec field is set, the group + * delays suspension of the instances until initialDelaySec have + * passed from instance.creationTimestamp (that is, when the + * instance was created). This delay gives your application time to + * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there + * will be zero delay. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is suspended. + * + * Suspended instances can be resumed using the resumeInstances + * method. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -104408,7 +102679,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -104417,44 +102687,73 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getSerialPortOutput({ - * // Name of the instance for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Specifies which COM or serial port to retrieve data from. - * port: 'placeholder-value', + * const res = await compute.instanceGroupManagers.suspendInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Specifies the starting byte position of the output to return. To start with - * // the first byte of output to the specified port, omit this field or set it - * // to `0`. + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. * // - * // If the output for that byte position is available, this field matches the - * // `start` parameter sent with the request. If the amount of serial console - * // output exceeds the size of the buffer (1 MB), the oldest output is - * // discarded and is no longer available. If the requested start position - * // refers to discarded output, the start position is adjusted to the oldest - * // output still available, and the adjusted start position is returned as the - * // `start` property value. + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate commitments. * // - * // You can also provide a negative start position, which translates to the - * // most recent number of bytes written to the serial port. For example, -3 is - * // interpreted as the most recent 3 bytes written to the serial console. Note - * // that the negative start is bounded by the retained buffer size, and the - * // returned serial console output will not exceed the max buffer size. - * start: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "forceSuspend": false, + * // "instances": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "contents": "my_contents", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "next": "my_next", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "start": "my_start" + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -104470,55 +102769,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getSerialPortOutput( - params: Params$Resource$Instances$Getserialportoutput, + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, options: StreamMethodOptions ): Promise>; - getSerialPortOutput( - params?: Params$Resource$Instances$Getserialportoutput, + suspendInstances( + params?: Params$Resource$Instancegroupmanagers$Suspendinstances, options?: MethodOptions - ): Promise>; - getSerialPortOutput( - params: Params$Resource$Instances$Getserialportoutput, + ): Promise>; + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getSerialPortOutput( - params: Params$Resource$Instances$Getserialportoutput, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getSerialPortOutput( - params: Params$Resource$Instances$Getserialportoutput, - callback: BodyResponseCallback + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getSerialPortOutput( - callback: BodyResponseCallback + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + callback: BodyResponseCallback ): void; - getSerialPortOutput( + suspendInstances(callback: BodyResponseCallback): void; + suspendInstances( paramsOrCallback?: - | Params$Resource$Instances$Getserialportoutput - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Suspendinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getserialportoutput; + {}) as Params$Resource$Instancegroupmanagers$Suspendinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getserialportoutput; + params = {} as Params$Resource$Instancegroupmanagers$Suspendinstances; options = {}; } @@ -104533,30 +102829,32 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/serialPort' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/suspendInstances' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the Shielded Instance Identity of an instance + * Inserts or updates per-instance configurations for the managed instance + * group. perInstanceConfig.name serves as a key used to + * distinguish whether to perform insert or patch. * @example * ```js * // Before running the sample: @@ -104580,7 +102878,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -104589,24 +102886,74 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getShieldedInstanceIdentity({ - * // Name or id of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroupManagers.updatePerInstanceConfigs({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "perInstanceConfigs": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "eccP256EncryptionKey": {}, - * // "eccP256SigningKey": {}, - * // "encryptionKey": {}, + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "signingKey": {} + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -104622,56 +102969,55 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getShieldedInstanceIdentity( - params: Params$Resource$Instances$Getshieldedinstanceidentity, + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, options: StreamMethodOptions ): Promise>; - getShieldedInstanceIdentity( - params?: Params$Resource$Instances$Getshieldedinstanceidentity, + updatePerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, options?: MethodOptions - ): Promise>; - getShieldedInstanceIdentity( - params: Params$Resource$Instances$Getshieldedinstanceidentity, + ): Promise>; + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getShieldedInstanceIdentity( - params: Params$Resource$Instances$Getshieldedinstanceidentity, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getShieldedInstanceIdentity( - params: Params$Resource$Instances$Getshieldedinstanceidentity, - callback: BodyResponseCallback + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + callback: BodyResponseCallback ): void; - getShieldedInstanceIdentity( - callback: BodyResponseCallback + updatePerInstanceConfigs( + callback: BodyResponseCallback ): void; - getShieldedInstanceIdentity( + updatePerInstanceConfigs( paramsOrCallback?: - | Params$Resource$Instances$Getshieldedinstanceidentity - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getshieldedinstanceidentity; + {}) as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getshieldedinstanceidentity; + params = + {} as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; options = {}; } @@ -104686,757 +103032,1219 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Instancegroupmanagers$Abandoninstances extends StandardParameters { /** - * Creates an instance resource in the specified project using the data - * included in the request. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersAbandonInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Aggregatedlist extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * // Do the magic - * const res = await compute.instances.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Specifies instance template to create the instance. - * // - * // This field is optional. It can be a full or partial URL. For example, the - * // following are all valid URLs to an instance template: - * // - * // - * // - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate - * // - projects/project/global/instanceTemplates/instanceTemplate - * // - global/instanceTemplates/instanceTemplate - * sourceInstanceTemplate: 'placeholder-value', - * // Specifies the machine image to use to create the instance. - * // - * // This field is optional. It can be a full or partial URL. For example, the - * // following are all valid URLs to a machine image: - * // - * // - * // - https://www.googleapis.com/compute/v1/projects/project/global/global/machineImages/machineImage - * // - projects/project/global/global/machineImages/machineImage - * // - global/machineImages/machineImage - * sourceMachineImage: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advancedMachineFeatures": {}, - * // "canIpForward": false, - * // "confidentialInstanceConfig": {}, - * // "cpuPlatform": "my_cpuPlatform", - * // "creationTimestamp": "my_creationTimestamp", - * // "deletionProtection": false, - * // "description": "my_description", - * // "disks": [], - * // "displayDevice": {}, - * // "fingerprint": "my_fingerprint", - * // "guestAccelerators": [], - * // "hostname": "my_hostname", - * // "id": "my_id", - * // "instanceEncryptionKey": {}, - * // "keyRevocationActionType": "my_keyRevocationActionType", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastStartTimestamp": "my_lastStartTimestamp", - * // "lastStopTimestamp": "my_lastStopTimestamp", - * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", - * // "localSsdEncryptionMode": "my_localSsdEncryptionMode", - * // "machineType": "my_machineType", - * // "metadata": {}, - * // "minCpuPlatform": "my_minCpuPlatform", - * // "name": "my_name", - * // "networkInterfaces": [], - * // "networkPerformanceConfig": {}, - * // "params": {}, - * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", - * // "reservationAffinity": {}, - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "scheduling": {}, - * // "selfLink": "my_selfLink", - * // "serviceAccounts": [], - * // "shieldedInstanceConfig": {}, - * // "shieldedInstanceIntegrityPolicy": {}, - * // "sourceMachineImage": "my_sourceMachineImage", - * // "sourceMachineImageEncryptionKey": {}, - * // "startRestricted": false, - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "tags": {}, - * // "workloadIdentityConfig": {}, - * // "zone": "my_zone" - * // } - * }, - * }); - * console.log(res.data); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) * ``` * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - insert( - params: Params$Resource$Instances$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Instances$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Instances$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Instances$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Instances$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Instances$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/compute/v1/projects/{project}/zones/{zone}/instances' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + filter?: string; /** - * Retrieves the list of instances contained within - * the specified zone. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Instancegroupmanagers$Applyupdatestoinstances extends StandardParameters { + /** + * The name of the managed instance group, should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone + * where the managed instance group is located. Should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersApplyUpdatesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Createinstances extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. * - * // Do the magic - * const res = await compute.instances.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersCreateInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Delete extends StandardParameters { + /** + * The name of the managed instance group to delete. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Example response - * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} - * // } - * } + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Deleteinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * ``` + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - list( - params: Params$Resource$Instances$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Instances$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Instances$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Instances$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Instances$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Instances$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/compute/v1/projects/{project}/zones/{zone}/instances' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersDeleteInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone + * where the managed instance + * group is located. + * It should conform to RFC1035. + */ + zone?: string; /** - * Retrieves a list of resources that refer to the VM instance specified in - * the request. For example, if the VM instance is part of a managed or - * unmanaged instance group, the referrers list includes the instance group. - * For more information, readViewing - * referrers to VM instances. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersDeletePerInstanceConfigsReq; + } + export interface Params$Resource$Instancegroupmanagers$Get extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone + * where you want to create the managed instance group. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManager; + } + export interface Params$Resource$Instancegroupmanagers$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * // Do the magic - * const res = await compute.instances.listReferrers({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Name of the target instance scoping this request, or '-' if the - * // request should span over all instances in the container. - * instance: '-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Example response - * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} - * // } - * } + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) * ``` * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - listReferrers( - params: Params$Resource$Instances$Listreferrers, - options: StreamMethodOptions - ): Promise>; - listReferrers( - params?: Params$Resource$Instances$Listreferrers, - options?: MethodOptions - ): Promise>; - listReferrers( - params: Params$Resource$Instances$Listreferrers, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listReferrers( - params: Params$Resource$Instances$Listreferrers, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listReferrers( - params: Params$Resource$Instances$Listreferrers, - callback: BodyResponseCallback - ): void; - listReferrers( - callback: BodyResponseCallback - ): void; - listReferrers( - paramsOrCallback?: - | Params$Resource$Instances$Listreferrers - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Listreferrers; - let options = (optionsOrCallback || {}) as MethodOptions; + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Listerrors extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the managed instance group. + * It must be a string that meets the requirements in RFC1035, or an + * unsigned long integer: must match regexp pattern: + * (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone where the managed + * instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Listmanagedinstances extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Listperinstanceconfigs extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the managed instance group. It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Patch extends StandardParameters { + /** + * The name of the instance group manager. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone where + * you want to create the managed instance group. + */ + zone?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Listreferrers; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManager; + } + export interface Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersPatchPerInstanceConfigsReq; + } + export interface Params$Resource$Instancegroupmanagers$Recreateinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance recreation even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/referrers' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersRecreateInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Resize extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The number of running instances that the managed instance group should + * maintain at any given time. The group automatically adds or removes + * instances to maintain the number of instances specified by this parameter. + */ + size?: number; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Resumeinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersResumeInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Setinstancetemplate extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSetInstanceTemplateRequest; + } + export interface Params$Resource$Instancegroupmanagers$Settargetpools extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSetTargetPoolsRequest; + } + export interface Params$Resource$Instancegroupmanagers$Startinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersStartInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Stopinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance stopping even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersStopInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Suspendinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSuspendInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersUpdatePerInstanceConfigsReq; + } + + export class Resource$Instancegroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Perform a manual maintenance on the instance. + * Adds a list of instances to the specified instance group. All of the + * instances in the instance group must be in the same network/subnetwork. + * Read + * Adding instances for more information. * @example * ```js * // Before running the sample: @@ -105468,9 +104276,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.performMaintenance({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroups.addInstances({ + * // The name of the instance group where you are adding instances. + * instanceGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -105488,8 +104296,17 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, * }); * console.log(res.data); * @@ -105498,6 +104315,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -105539,32 +104357,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - performMaintenance( - params: Params$Resource$Instances$Performmaintenance, + addInstances( + params: Params$Resource$Instancegroups$Addinstances, options: StreamMethodOptions ): Promise>; - performMaintenance( - params?: Params$Resource$Instances$Performmaintenance, + addInstances( + params?: Params$Resource$Instancegroups$Addinstances, options?: MethodOptions ): Promise>; - performMaintenance( - params: Params$Resource$Instances$Performmaintenance, + addInstances( + params: Params$Resource$Instancegroups$Addinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - performMaintenance( - params: Params$Resource$Instances$Performmaintenance, + addInstances( + params: Params$Resource$Instancegroups$Addinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - performMaintenance( - params: Params$Resource$Instances$Performmaintenance, + addInstances( + params: Params$Resource$Instancegroups$Addinstances, callback: BodyResponseCallback ): void; - performMaintenance(callback: BodyResponseCallback): void; - performMaintenance( + addInstances(callback: BodyResponseCallback): void; + addInstances( paramsOrCallback?: - | Params$Resource$Instances$Performmaintenance + | Params$Resource$Instancegroups$Addinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -105579,12 +104397,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Performmaintenance; + {}) as Params$Resource$Instancegroups$Addinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Performmaintenance; + params = {} as Params$Resource$Instancegroups$Addinstances; options = {}; } @@ -105599,7 +104417,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/performMaintenance' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -105607,8 +104425,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -105622,7 +104440,10 @@ export namespace compute_preview { } /** - * Removes resource policies from an instance. + * Retrieves the list of instance groups and sorts them by zone. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -105646,6 +104467,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -105654,70 +104476,114 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.removeResourcePolicies({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroups.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "resourcePolicies": [] - * // } - * }, + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -105733,54 +104599,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeResourcePolicies( - params: Params$Resource$Instances$Removeresourcepolicies, + aggregatedList( + params: Params$Resource$Instancegroups$Aggregatedlist, options: StreamMethodOptions ): Promise>; - removeResourcePolicies( - params?: Params$Resource$Instances$Removeresourcepolicies, + aggregatedList( + params?: Params$Resource$Instancegroups$Aggregatedlist, options?: MethodOptions - ): Promise>; - removeResourcePolicies( - params: Params$Resource$Instances$Removeresourcepolicies, + ): Promise>; + aggregatedList( + params: Params$Resource$Instancegroups$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeResourcePolicies( - params: Params$Resource$Instances$Removeresourcepolicies, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instancegroups$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeResourcePolicies( - params: Params$Resource$Instances$Removeresourcepolicies, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instancegroups$Aggregatedlist, + callback: BodyResponseCallback ): void; - removeResourcePolicies( - callback: BodyResponseCallback + aggregatedList( + callback: BodyResponseCallback ): void; - removeResourcePolicies( + aggregatedList( paramsOrCallback?: - | Params$Resource$Instances$Removeresourcepolicies - | BodyResponseCallback + | Params$Resource$Instancegroups$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Removeresourcepolicies; + {}) as Params$Resource$Instancegroups$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Removeresourcepolicies; + params = {} as Params$Resource$Instancegroups$Aggregatedlist; options = {}; } @@ -105795,30 +104664,33 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies' + '/compute/v1/projects/{project}/aggregated/instanceGroups' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Mark the host as faulty and try to restart the instance on a new host. + * Deletes the specified instance group. The instances in the group are not + * deleted. Note that instance group must not belong to a backend service. + * Read + * Deleting an instance group for more information. * @example * ```js * // Before running the sample: @@ -105850,9 +104722,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.reportHostAsFaulty({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroups.delete({ + * // The name of the instance group to delete. + * instanceGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -105870,17 +104742,9 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "disruptionSchedule": "my_disruptionSchedule", - * // "faultReasons": [] - * // } - * }, + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -105889,6 +104753,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -105930,32 +104795,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reportHostAsFaulty( - params: Params$Resource$Instances$Reporthostasfaulty, + delete( + params: Params$Resource$Instancegroups$Delete, options: StreamMethodOptions ): Promise>; - reportHostAsFaulty( - params?: Params$Resource$Instances$Reporthostasfaulty, + delete( + params?: Params$Resource$Instancegroups$Delete, options?: MethodOptions ): Promise>; - reportHostAsFaulty( - params: Params$Resource$Instances$Reporthostasfaulty, + delete( + params: Params$Resource$Instancegroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportHostAsFaulty( - params: Params$Resource$Instances$Reporthostasfaulty, + delete( + params: Params$Resource$Instancegroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportHostAsFaulty( - params: Params$Resource$Instances$Reporthostasfaulty, + delete( + params: Params$Resource$Instancegroups$Delete, callback: BodyResponseCallback ): void; - reportHostAsFaulty(callback: BodyResponseCallback): void; - reportHostAsFaulty( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instances$Reporthostasfaulty + | Params$Resource$Instancegroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -105970,12 +104835,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Reporthostasfaulty; + {}) as Params$Resource$Instancegroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Reporthostasfaulty; + params = {} as Params$Resource$Instancegroups$Delete; options = {}; } @@ -105990,16 +104855,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -106013,9 +104878,12 @@ export namespace compute_preview { } /** - * Performs a reset on the instance. This is a hard reset. The VM - * does not do a graceful shutdown. For more information, seeResetting - * an instance. + * Returns the specified zonal instance group. Get a list of available zonal + * instance groups by making a list() request. + * + * For managed instance groups, use theinstanceGroupManagers + * or regionInstanceGroupManagers + * methods instead. * @example * ```js * // Before running the sample: @@ -106039,6 +104907,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -106047,63 +104916,32 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.reset({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroups.get({ + * // The name of the instance group. + * instanceGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Mode of reset operation. Defaults to HARD_RESET if not provided. - * resetMode: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "namedPorts": [], + * // "network": "my_network", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "size": 0, + * // "subnetwork": "my_subnetwork", * // "zone": "my_zone" * // } * } @@ -106120,51 +104958,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reset( - params: Params$Resource$Instances$Reset, + get( + params: Params$Resource$Instancegroups$Get, options: StreamMethodOptions ): Promise>; - reset( - params?: Params$Resource$Instances$Reset, + get( + params?: Params$Resource$Instancegroups$Get, options?: MethodOptions - ): Promise>; - reset( - params: Params$Resource$Instances$Reset, + ): Promise>; + get( + params: Params$Resource$Instancegroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reset( - params: Params$Resource$Instances$Reset, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - reset( - params: Params$Resource$Instances$Reset, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroups$Get, + callback: BodyResponseCallback ): void; - reset(callback: BodyResponseCallback): void; - reset( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instances$Reset - | BodyResponseCallback + | Params$Resource$Instancegroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Reset; + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Reset; + params = {} as Params$Resource$Instancegroups$Get; options = {}; } @@ -106179,31 +105019,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reset' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Resumes an instance that was suspended using theinstances().suspend - * method. + * Creates an instance group in the specified project using the + * parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -106235,9 +105075,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.resume({ - * // Name of the instance resource to resume. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -106255,8 +105093,29 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone + * // where you want to create the instance group. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "namedPorts": [], + * // "network": "my_network", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * @@ -106265,6 +105124,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -106306,32 +105166,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resume( - params: Params$Resource$Instances$Resume, + insert( + params: Params$Resource$Instancegroups$Insert, options: StreamMethodOptions ): Promise>; - resume( - params?: Params$Resource$Instances$Resume, + insert( + params?: Params$Resource$Instancegroups$Insert, options?: MethodOptions ): Promise>; - resume( - params: Params$Resource$Instances$Resume, + insert( + params: Params$Resource$Instancegroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resume( - params: Params$Resource$Instances$Resume, + insert( + params: Params$Resource$Instancegroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resume( - params: Params$Resource$Instances$Resume, + insert( + params: Params$Resource$Instancegroups$Insert, callback: BodyResponseCallback ): void; - resume(callback: BodyResponseCallback): void; - resume( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instances$Resume + | Params$Resource$Instancegroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -106345,12 +105205,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Resume; + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Resume; + params = {} as Params$Resource$Instancegroups$Insert; options = {}; } @@ -106365,7 +105226,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/resume' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -106373,8 +105234,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -106388,145 +105249,12 @@ export namespace compute_preview { } /** - * Sends diagnostic interrupt to the instance. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instances.sendDiagnosticInterrupt({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - sendDiagnosticInterrupt( - params: Params$Resource$Instances$Senddiagnosticinterrupt, - options: StreamMethodOptions - ): Promise>; - sendDiagnosticInterrupt( - params?: Params$Resource$Instances$Senddiagnosticinterrupt, - options?: MethodOptions - ): Promise>; - sendDiagnosticInterrupt( - params: Params$Resource$Instances$Senddiagnosticinterrupt, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - sendDiagnosticInterrupt( - params: Params$Resource$Instances$Senddiagnosticinterrupt, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - sendDiagnosticInterrupt( - params: Params$Resource$Instances$Senddiagnosticinterrupt, - callback: BodyResponseCallback - ): void; - sendDiagnosticInterrupt(callback: BodyResponseCallback): void; - sendDiagnosticInterrupt( - paramsOrCallback?: - | Params$Resource$Instances$Senddiagnosticinterrupt - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Senddiagnosticinterrupt; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Senddiagnosticinterrupt; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Sets deletion protection on the instance. + * Retrieves the list of zonal instance group resources contained within the + * specified zone. + * + * For managed instance groups, use theinstanceGroupManagers + * or regionInstanceGroupManagers + * methods instead. * @example * ```js * // Before running the sample: @@ -106550,6 +105278,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -106558,257 +105287,105 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setDeletionProtection({ - * // Whether the resource should be protected against deletion. - * deletionProtection: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.instanceGroups.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - setDeletionProtection( - params: Params$Resource$Instances$Setdeletionprotection, - options: StreamMethodOptions - ): Promise>; - setDeletionProtection( - params?: Params$Resource$Instances$Setdeletionprotection, - options?: MethodOptions - ): Promise>; - setDeletionProtection( - params: Params$Resource$Instances$Setdeletionprotection, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setDeletionProtection( - params: Params$Resource$Instances$Setdeletionprotection, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setDeletionProtection( - params: Params$Resource$Instances$Setdeletionprotection, - callback: BodyResponseCallback - ): void; - setDeletionProtection( - callback: BodyResponseCallback - ): void; - setDeletionProtection( - paramsOrCallback?: - | Params$Resource$Instances$Setdeletionprotection - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setdeletionprotection; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setdeletionprotection; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Sets the auto-delete flag for a disk attached to an instance. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instances.setDiskAutoDelete({ - * // Whether to auto-delete the disk when the instance is deleted. - * autoDelete: 'placeholder-value', - * // The device name of the disk to modify. Make a get() request - * // on the instance to view currently attached disks and device names. - * deviceName: '\w[\w.-]{0,254}', - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of thezone + * // where the instance group is located. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -106824,52 +105401,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setDiskAutoDelete( - params: Params$Resource$Instances$Setdiskautodelete, + list( + params: Params$Resource$Instancegroups$List, options: StreamMethodOptions ): Promise>; - setDiskAutoDelete( - params?: Params$Resource$Instances$Setdiskautodelete, + list( + params?: Params$Resource$Instancegroups$List, options?: MethodOptions - ): Promise>; - setDiskAutoDelete( - params: Params$Resource$Instances$Setdiskautodelete, + ): Promise>; + list( + params: Params$Resource$Instancegroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setDiskAutoDelete( - params: Params$Resource$Instances$Setdiskautodelete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setDiskAutoDelete( - params: Params$Resource$Instances$Setdiskautodelete, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroups$List, + callback: BodyResponseCallback ): void; - setDiskAutoDelete(callback: BodyResponseCallback): void; - setDiskAutoDelete( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instances$Setdiskautodelete - | BodyResponseCallback + | Params$Resource$Instancegroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setdiskautodelete; + {}) as Params$Resource$Instancegroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setdiskautodelete; + params = {} as Params$Resource$Instancegroups$List; options = {}; } @@ -106884,37 +105462,33 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: [ - 'project', - 'zone', - 'instance', - 'autoDelete', - 'deviceName', - ], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Lists the instances in the specified instance group. + * The orderBy query parameter is not supported. + * The filter query parameter is supported, but only for + * expressions that use `eq` (equal) or `ne` (not equal) operators. * @example * ```js * // Before running the sample: @@ -106938,6 +105512,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -106946,22 +105521,103 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setIamPolicy({ + * const res = await compute.instanceGroups.listInstances({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the instance group from which you want to generate a list + * // of included instances. + * instanceGroup: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "instanceState": "my_instanceState" * // } * }, * }); @@ -106969,10 +105625,12 @@ export namespace compute_preview { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -106988,52 +105646,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Instances$Setiampolicy, + listInstances( + params: Params$Resource$Instancegroups$Listinstances, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Instances$Setiampolicy, + listInstances( + params?: Params$Resource$Instancegroups$Listinstances, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Instances$Setiampolicy, + ): Promise>; + listInstances( + params: Params$Resource$Instancegroups$Listinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Instances$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listInstances( + params: Params$Resource$Instancegroups$Listinstances, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Instances$Setiampolicy, - callback: BodyResponseCallback + listInstances( + params: Params$Resource$Instancegroups$Listinstances, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + listInstances( + callback: BodyResponseCallback + ): void; + listInstances( paramsOrCallback?: - | Params$Resource$Instances$Setiampolicy - | BodyResponseCallback + | Params$Resource$Instancegroups$Listinstances + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setiampolicy; + {}) as Params$Resource$Instancegroups$Listinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setiampolicy; + params = {} as Params$Resource$Instancegroups$Listinstances; options = {}; } @@ -107048,7 +105711,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -107056,23 +105719,28 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets labels on an instance. To learn more about labels, read theLabeling - * Resources documentation. + * Removes one or more instances from the specified instance group, but does + * not delete those instances. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration before the VM instance is removed or deleted. * @example * ```js * // Before running the sample: @@ -107104,9 +105772,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setLabels({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroups.removeInstances({ + * // The name of the instance group where the specified instances will be + * // removed. + * instanceGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -107124,15 +105793,15 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "instances": [] * // } * }, * }); @@ -107143,6 +105812,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -107184,32 +105854,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Instances$Setlabels, + removeInstances( + params: Params$Resource$Instancegroups$Removeinstances, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Instances$Setlabels, + removeInstances( + params?: Params$Resource$Instancegroups$Removeinstances, options?: MethodOptions ): Promise>; - setLabels( - params: Params$Resource$Instances$Setlabels, + removeInstances( + params: Params$Resource$Instancegroups$Removeinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Instances$Setlabels, + removeInstances( + params: Params$Resource$Instancegroups$Removeinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Instances$Setlabels, + removeInstances( + params: Params$Resource$Instancegroups$Removeinstances, callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + removeInstances(callback: BodyResponseCallback): void; + removeInstances( paramsOrCallback?: - | Params$Resource$Instances$Setlabels + | Params$Resource$Instancegroups$Removeinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -107224,12 +105894,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setlabels; + {}) as Params$Resource$Instancegroups$Removeinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setlabels; + params = {} as Params$Resource$Instancegroups$Removeinstances; options = {}; } @@ -107244,7 +105914,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setLabels' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -107252,8 +105922,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -107267,8 +105937,7 @@ export namespace compute_preview { } /** - * Changes the number and/or type of accelerator for a stopped instance to the - * values specified in the request. + * Sets the named ports for the specified instance group. * @example * ```js * // Before running the sample: @@ -107300,9 +105969,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setMachineResources({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroups.setNamedPorts({ + * // The name of the instance group where the named ports are updated. + * instanceGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -107320,14 +105989,16 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "guestAccelerators": [] + * // "fingerprint": "my_fingerprint", + * // "namedPorts": [] * // } * }, * }); @@ -107338,6 +106009,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -107379,32 +106051,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setMachineResources( - params: Params$Resource$Instances$Setmachineresources, + setNamedPorts( + params: Params$Resource$Instancegroups$Setnamedports, options: StreamMethodOptions ): Promise>; - setMachineResources( - params?: Params$Resource$Instances$Setmachineresources, + setNamedPorts( + params?: Params$Resource$Instancegroups$Setnamedports, options?: MethodOptions ): Promise>; - setMachineResources( - params: Params$Resource$Instances$Setmachineresources, + setNamedPorts( + params: Params$Resource$Instancegroups$Setnamedports, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMachineResources( - params: Params$Resource$Instances$Setmachineresources, + setNamedPorts( + params: Params$Resource$Instancegroups$Setnamedports, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMachineResources( - params: Params$Resource$Instances$Setmachineresources, + setNamedPorts( + params: Params$Resource$Instancegroups$Setnamedports, callback: BodyResponseCallback ): void; - setMachineResources(callback: BodyResponseCallback): void; - setMachineResources( + setNamedPorts(callback: BodyResponseCallback): void; + setNamedPorts( paramsOrCallback?: - | Params$Resource$Instances$Setmachineresources + | Params$Resource$Instancegroups$Setnamedports | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -107419,12 +106091,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setmachineresources; + {}) as Params$Resource$Instancegroups$Setnamedports; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setmachineresources; + params = {} as Params$Resource$Instancegroups$Setnamedports; options = {}; } @@ -107439,7 +106111,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineResources' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -107447,8 +106119,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -107462,8 +106134,7 @@ export namespace compute_preview { } /** - * Changes the machine type for a stopped instance to the machine - * type specified in the request. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -107487,6 +106158,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -107495,26 +106167,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setMachineType({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceGroups.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * @@ -107522,7 +106180,7 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "machineType": "my_machineType" + * // "permissions": [] * // } * }, * }); @@ -107530,35 +106188,7 @@ export namespace compute_preview { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -107574,52 +106204,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setMachineType( - params: Params$Resource$Instances$Setmachinetype, + testIamPermissions( + params: Params$Resource$Instancegroups$Testiampermissions, options: StreamMethodOptions ): Promise>; - setMachineType( - params?: Params$Resource$Instances$Setmachinetype, + testIamPermissions( + params?: Params$Resource$Instancegroups$Testiampermissions, options?: MethodOptions - ): Promise>; - setMachineType( - params: Params$Resource$Instances$Setmachinetype, + ): Promise>; + testIamPermissions( + params: Params$Resource$Instancegroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMachineType( - params: Params$Resource$Instances$Setmachinetype, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Instancegroups$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setMachineType( - params: Params$Resource$Instances$Setmachinetype, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Instancegroups$Testiampermissions, + callback: BodyResponseCallback ): void; - setMachineType(callback: BodyResponseCallback): void; - setMachineType( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instances$Setmachinetype - | BodyResponseCallback + | Params$Resource$Instancegroups$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setmachinetype; + {}) as Params$Resource$Instancegroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setmachinetype; + params = {} as Params$Resource$Instancegroups$Testiampermissions; options = {}; } @@ -107634,7 +106268,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineType' + '/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -107642,70 +106276,605 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Instancegroups$Addinstances extends StandardParameters { /** - * Sets metadata for the specified instance to the data included - * in the request. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * The name of the instance group where you are adding instances. + */ + instanceGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone + * where the instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupsAddInstancesRequest; + } + export interface Params$Resource$Instancegroups$Aggregatedlist extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * // Do the magic - * const res = await compute.instances.setMetadata({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. - * // + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Instancegroups$Delete extends StandardParameters { + /** + * The name of the instance group to delete. + */ + instanceGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone + * where the instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroups$Get extends StandardParameters { + /** + * The name of the instance group. + */ + instanceGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone + * where the instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroups$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone + * where you want to create the instance group. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroup; + } + export interface Params$Resource$Instancegroups$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone + * where the instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroups$Listinstances extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the instance group from which you want to generate a list + * of included instances. + */ + instanceGroup?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone + * where the instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupsListInstancesRequest; + } + export interface Params$Resource$Instancegroups$Removeinstances extends StandardParameters { + /** + * The name of the instance group where the specified instances will be + * removed. + */ + instanceGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone + * where the instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupsRemoveInstancesRequest; + } + export interface Params$Resource$Instancegroups$Setnamedports extends StandardParameters { + /** + * The name of the instance group where the named ports are updated. + */ + instanceGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone + * where the instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupsSetNamedPortsRequest; + } + export interface Params$Resource$Instancegroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Instances { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Adds an access config to an instance's network interface. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.addAccessConfig({ + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the network interface to add to this instance. + * networkInterface: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). @@ -107717,9 +106886,17 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "fingerprint": "my_fingerprint", - * // "items": [], - * // "kind": "my_kind" + * // "externalIpv6": "my_externalIpv6", + * // "externalIpv6PrefixLength": 0, + * // "ipCollection": "my_ipCollection", + * // "kind": "my_kind", + * // "name": "my_name", + * // "natIP": "my_natIP", + * // "networkTier": "my_networkTier", + * // "publicPtrDomainName": "my_publicPtrDomainName", + * // "securityPolicy": "my_securityPolicy", + * // "setPublicPtr": false, + * // "type": "my_type" * // } * }, * }); @@ -107730,6 +106907,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -107771,32 +106949,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setMetadata( - params: Params$Resource$Instances$Setmetadata, + addAccessConfig( + params: Params$Resource$Instances$Addaccessconfig, options: StreamMethodOptions ): Promise>; - setMetadata( - params?: Params$Resource$Instances$Setmetadata, + addAccessConfig( + params?: Params$Resource$Instances$Addaccessconfig, options?: MethodOptions ): Promise>; - setMetadata( - params: Params$Resource$Instances$Setmetadata, + addAccessConfig( + params: Params$Resource$Instances$Addaccessconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMetadata( - params: Params$Resource$Instances$Setmetadata, + addAccessConfig( + params: Params$Resource$Instances$Addaccessconfig, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMetadata( - params: Params$Resource$Instances$Setmetadata, + addAccessConfig( + params: Params$Resource$Instances$Addaccessconfig, callback: BodyResponseCallback ): void; - setMetadata(callback: BodyResponseCallback): void; - setMetadata( + addAccessConfig(callback: BodyResponseCallback): void; + addAccessConfig( paramsOrCallback?: - | Params$Resource$Instances$Setmetadata + | Params$Resource$Instances$Addaccessconfig | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -107811,12 +106989,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setmetadata; + {}) as Params$Resource$Instances$Addaccessconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setmetadata; + params = {} as Params$Resource$Instances$Addaccessconfig; options = {}; } @@ -107831,7 +107009,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMetadata' + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -107839,7 +107017,7 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], + requiredParams: ['project', 'zone', 'instance', 'networkInterface'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -107854,10 +107032,7 @@ export namespace compute_preview { } /** - * Changes the minimum CPU platform that this instance should use. - * This method can only - * be called on a stopped instance. For more information, readSpecifying a - * Minimum CPU Platform. + * Adds one dynamic network interface to an active instance. * @example * ```js * // Before running the sample: @@ -107889,9 +107064,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setMinCpuPlatform({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instances.addNetworkInterface({ + * // The instance name for this request stored as resource_id. + * // Name should conform to RFC1035 or be an unsigned long integer. + * instance: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -107916,7 +107092,28 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "minCpuPlatform": "my_minCpuPlatform" + * // "accessConfigs": [], + * // "aliasIpRanges": [], + * // "aliasIpv6Ranges": [], + * // "enableVpcScopedDns": false, + * // "fingerprint": "my_fingerprint", + * // "igmpQuery": "my_igmpQuery", + * // "internalIpv6PrefixLength": 0, + * // "ipv6AccessConfigs": [], + * // "ipv6AccessType": "my_ipv6AccessType", + * // "ipv6Address": "my_ipv6Address", + * // "kind": "my_kind", + * // "name": "my_name", + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkIP": "my_networkIP", + * // "nicType": "my_nicType", + * // "parentNicName": "my_parentNicName", + * // "queueCount": 0, + * // "serviceClassId": "my_serviceClassId", + * // "stackType": "my_stackType", + * // "subnetwork": "my_subnetwork", + * // "vlan": 0 * // } * }, * }); @@ -107927,6 +107124,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -107968,32 +107166,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setMinCpuPlatform( - params: Params$Resource$Instances$Setmincpuplatform, + addNetworkInterface( + params: Params$Resource$Instances$Addnetworkinterface, options: StreamMethodOptions ): Promise>; - setMinCpuPlatform( - params?: Params$Resource$Instances$Setmincpuplatform, + addNetworkInterface( + params?: Params$Resource$Instances$Addnetworkinterface, options?: MethodOptions ): Promise>; - setMinCpuPlatform( - params: Params$Resource$Instances$Setmincpuplatform, + addNetworkInterface( + params: Params$Resource$Instances$Addnetworkinterface, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMinCpuPlatform( - params: Params$Resource$Instances$Setmincpuplatform, + addNetworkInterface( + params: Params$Resource$Instances$Addnetworkinterface, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMinCpuPlatform( - params: Params$Resource$Instances$Setmincpuplatform, + addNetworkInterface( + params: Params$Resource$Instances$Addnetworkinterface, callback: BodyResponseCallback ): void; - setMinCpuPlatform(callback: BodyResponseCallback): void; - setMinCpuPlatform( + addNetworkInterface(callback: BodyResponseCallback): void; + addNetworkInterface( paramsOrCallback?: - | Params$Resource$Instances$Setmincpuplatform + | Params$Resource$Instances$Addnetworkinterface | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -108008,12 +107206,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setmincpuplatform; + {}) as Params$Resource$Instances$Addnetworkinterface; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setmincpuplatform; + params = {} as Params$Resource$Instances$Addnetworkinterface; options = {}; } @@ -108028,7 +107226,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform' + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addNetworkInterface' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -108051,7 +107249,9 @@ export namespace compute_preview { } /** - * Sets name of an instance. + * Adds existing resource policies to an instance. You can only add one + * policy right now which will be applied to this instance for scheduling live + * migrations. * @example * ```js * // Before running the sample: @@ -108083,7 +107283,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setName({ + * const res = await compute.instances.addResourcePolicies({ * // The instance name for this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. @@ -108110,8 +107310,7 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "currentName": "my_currentName", - * // "name": "my_name" + * // "resourcePolicies": [] * // } * }, * }); @@ -108122,6 +107321,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -108163,32 +107363,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setName( - params: Params$Resource$Instances$Setname, + addResourcePolicies( + params: Params$Resource$Instances$Addresourcepolicies, options: StreamMethodOptions ): Promise>; - setName( - params?: Params$Resource$Instances$Setname, + addResourcePolicies( + params?: Params$Resource$Instances$Addresourcepolicies, options?: MethodOptions ): Promise>; - setName( - params: Params$Resource$Instances$Setname, + addResourcePolicies( + params: Params$Resource$Instances$Addresourcepolicies, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setName( - params: Params$Resource$Instances$Setname, + addResourcePolicies( + params: Params$Resource$Instances$Addresourcepolicies, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setName( - params: Params$Resource$Instances$Setname, + addResourcePolicies( + params: Params$Resource$Instances$Addresourcepolicies, callback: BodyResponseCallback ): void; - setName(callback: BodyResponseCallback): void; - setName( + addResourcePolicies(callback: BodyResponseCallback): void; + addResourcePolicies( paramsOrCallback?: - | Params$Resource$Instances$Setname + | Params$Resource$Instances$Addresourcepolicies | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -108203,12 +107403,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setname; + {}) as Params$Resource$Instances$Addresourcepolicies; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setname; + params = {} as Params$Resource$Instances$Addresourcepolicies; options = {}; } @@ -108223,7 +107423,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setName' + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -108246,11 +107446,14 @@ export namespace compute_preview { } /** - * Sets an instance's scheduling options. You can only call this method on astopped instance, - * that is, a VM instance that is in a `TERMINATED` state. SeeInstance Life - * Cycle for more information on the possible instance states. - * For more information about setting scheduling options for a VM, seeSet - * VM host maintenance policy. + * Retrieves an aggregated list of all of the instances in your project + * across all regions and zones. + * + * The performance of this method degrades when a filter is specified on a + * project that has a very large number of instances. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -108274,6 +107477,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -108282,88 +107486,114 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setScheduling({ - * // Instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instances.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "automaticRestart": false, - * // "availabilityDomain": 0, - * // "exposeHostTopology": false, - * // "gracefulShutdown": {}, - * // "hostErrorTimeoutSeconds": 0, - * // "instanceTerminationAction": "my_instanceTerminationAction", - * // "localSsdRecoveryTimeout": {}, - * // "locationHint": "my_locationHint", - * // "maxRunDuration": {}, - * // "minNodeCpus": 0, - * // "nodeAffinities": [], - * // "onHostMaintenance": "my_onHostMaintenance", - * // "onInstanceStopAction": {}, - * // "preemptible": false, - * // "preemptionNoticeDuration": {}, - * // "protectionTier": "my_protectionTier", - * // "provisioningModel": "my_provisioningModel", - * // "skipGuestOsShutdown": false, - * // "terminationTime": "my_terminationTime" - * // } - * }, + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -108379,52 +107609,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setScheduling( - params: Params$Resource$Instances$Setscheduling, + aggregatedList( + params: Params$Resource$Instances$Aggregatedlist, options: StreamMethodOptions ): Promise>; - setScheduling( - params?: Params$Resource$Instances$Setscheduling, + aggregatedList( + params?: Params$Resource$Instances$Aggregatedlist, options?: MethodOptions - ): Promise>; - setScheduling( - params: Params$Resource$Instances$Setscheduling, + ): Promise>; + aggregatedList( + params: Params$Resource$Instances$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setScheduling( - params: Params$Resource$Instances$Setscheduling, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instances$Aggregatedlist, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setScheduling( - params: Params$Resource$Instances$Setscheduling, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instances$Aggregatedlist, + callback: BodyResponseCallback ): void; - setScheduling(callback: BodyResponseCallback): void; - setScheduling( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Instances$Setscheduling - | BodyResponseCallback + | Params$Resource$Instances$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setscheduling; + {}) as Params$Resource$Instances$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setscheduling; + params = {} as Params$Resource$Instances$Aggregatedlist; options = {}; } @@ -108438,33 +107672,33 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setScheduling' + rootUrl + '/compute/v1/projects/{project}/aggregated/instances' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the Google Cloud Armor security policy for the specified instance. - * For more information, seeGoogle - * Cloud Armor Overview + * Attaches an existing Disk resource to an instance. You must first + * create the disk before you can attach it. It is not possible to create + * and attach a disk at the same time. For more information, readAdding a + * persistent disk to your instance. * @example * ```js * // Before running the sample: @@ -108496,10 +107730,13 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setSecurityPolicy({ - * // Name of the Instance resource to which the security policy should be - * // set. The name should conform to RFC1035. - * instance: 'placeholder-value', + * const res = await compute.instances.attachDisk({ + * // Whether to force attach the regional disk even if it's currently attached + * // to another instance. If you try to force attach a zonal disk to an + * // instance, you will receive an error. + * forceAttach: 'placeholder-value', + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -108517,15 +107754,31 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the zone scoping this request. + * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "networkInterfaces": [], - * // "securityPolicy": "my_securityPolicy" + * // "architecture": "my_architecture", + * // "autoDelete": false, + * // "boot": false, + * // "deviceName": "my_deviceName", + * // "diskEncryptionKey": {}, + * // "diskSizeGb": "my_diskSizeGb", + * // "forceAttach": false, + * // "guestOsFeatures": [], + * // "index": 0, + * // "initializeParams": {}, + * // "interface": "my_interface", + * // "kind": "my_kind", + * // "licenses": [], + * // "mode": "my_mode", + * // "savedState": "my_savedState", + * // "shieldedInstanceInitialState": {}, + * // "source": "my_source", + * // "type": "my_type" * // } * }, * }); @@ -108536,6 +107789,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -108577,32 +107831,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setSecurityPolicy( - params: Params$Resource$Instances$Setsecuritypolicy, + attachDisk( + params: Params$Resource$Instances$Attachdisk, options: StreamMethodOptions ): Promise>; - setSecurityPolicy( - params?: Params$Resource$Instances$Setsecuritypolicy, + attachDisk( + params?: Params$Resource$Instances$Attachdisk, options?: MethodOptions ): Promise>; - setSecurityPolicy( - params: Params$Resource$Instances$Setsecuritypolicy, + attachDisk( + params: Params$Resource$Instances$Attachdisk, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setSecurityPolicy( - params: Params$Resource$Instances$Setsecuritypolicy, + attachDisk( + params: Params$Resource$Instances$Attachdisk, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setSecurityPolicy( - params: Params$Resource$Instances$Setsecuritypolicy, + attachDisk( + params: Params$Resource$Instances$Attachdisk, callback: BodyResponseCallback ): void; - setSecurityPolicy(callback: BodyResponseCallback): void; - setSecurityPolicy( + attachDisk(callback: BodyResponseCallback): void; + attachDisk( paramsOrCallback?: - | Params$Resource$Instances$Setsecuritypolicy + | Params$Resource$Instances$Attachdisk | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -108617,12 +107871,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setsecuritypolicy; + {}) as Params$Resource$Instances$Attachdisk; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setsecuritypolicy; + params = {} as Params$Resource$Instances$Attachdisk; options = {}; } @@ -108637,7 +107891,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setSecurityPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/attachDisk' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -108660,9 +107914,9 @@ export namespace compute_preview { } /** - * Sets the service account on the instance. For more information, - * readChanging - * the service account and access scopes for an instance. + * Creates multiple instances. Count specifies the number of instances to + * create. For more information, seeAbout bulk + * creation of VMs. * @example * ```js * // Before running the sample: @@ -108694,9 +107948,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setServiceAccount({ - * // Name of the instance resource to start. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instances.bulkInsert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -108721,8 +107973,14 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "email": "my_email", - * // "scopes": [] + * // "count": "my_count", + * // "instanceFlexibilityPolicy": {}, + * // "instanceProperties": {}, + * // "locationPolicy": {}, + * // "minCount": "my_minCount", + * // "namePattern": "my_namePattern", + * // "perInstanceProperties": {}, + * // "sourceInstanceTemplate": "my_sourceInstanceTemplate" * // } * }, * }); @@ -108733,6 +107991,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -108774,32 +108033,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setServiceAccount( - params: Params$Resource$Instances$Setserviceaccount, + bulkInsert( + params: Params$Resource$Instances$Bulkinsert, options: StreamMethodOptions ): Promise>; - setServiceAccount( - params?: Params$Resource$Instances$Setserviceaccount, + bulkInsert( + params?: Params$Resource$Instances$Bulkinsert, options?: MethodOptions ): Promise>; - setServiceAccount( - params: Params$Resource$Instances$Setserviceaccount, + bulkInsert( + params: Params$Resource$Instances$Bulkinsert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setServiceAccount( - params: Params$Resource$Instances$Setserviceaccount, + bulkInsert( + params: Params$Resource$Instances$Bulkinsert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setServiceAccount( - params: Params$Resource$Instances$Setserviceaccount, + bulkInsert( + params: Params$Resource$Instances$Bulkinsert, callback: BodyResponseCallback ): void; - setServiceAccount(callback: BodyResponseCallback): void; - setServiceAccount( + bulkInsert(callback: BodyResponseCallback): void; + bulkInsert( paramsOrCallback?: - | Params$Resource$Instances$Setserviceaccount + | Params$Resource$Instances$Bulkinsert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -108814,12 +108073,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setserviceaccount; + {}) as Params$Resource$Instances$Bulkinsert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setserviceaccount; + params = {} as Params$Resource$Instances$Bulkinsert; options = {}; } @@ -108834,7 +108093,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount' + '/compute/v1/projects/{project}/zones/{zone}/instances/bulkInsert' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -108842,8 +108101,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -108857,10 +108116,8 @@ export namespace compute_preview { } /** - * Sets the Shielded Instance integrity policy for an instance. You can - * only use this method on a running instance. This method - * supports PATCH semantics and uses the JSON merge - * patch format and processing rules. + * Deletes the specified Instance resource. For more information, seeDeleting + * an instance. * @example * ```js * // Before running the sample: @@ -108892,9 +108149,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setShieldedInstanceIntegrityPolicy({ - * // Name or id of the instance scoping this request. + * const res = await compute.instances.delete({ + * // Name of the instance resource to delete. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // If set to true, Graceful Shutdown is skipped. + * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -108914,14 +108173,6 @@ export namespace compute_preview { * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "updateAutoLearnPolicy": false - * // } - * }, * }); * console.log(res.data); * @@ -108930,6 +108181,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -108971,34 +108223,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setShieldedInstanceIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + delete( + params: Params$Resource$Instances$Delete, options: StreamMethodOptions ): Promise>; - setShieldedInstanceIntegrityPolicy( - params?: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + delete( + params?: Params$Resource$Instances$Delete, options?: MethodOptions ): Promise>; - setShieldedInstanceIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + delete( + params: Params$Resource$Instances$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setShieldedInstanceIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + delete( + params: Params$Resource$Instances$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setShieldedInstanceIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, - callback: BodyResponseCallback - ): void; - setShieldedInstanceIntegrityPolicy( + delete( + params: Params$Resource$Instances$Delete, callback: BodyResponseCallback ): void; - setShieldedInstanceIntegrityPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instances$Setshieldedinstanceintegritypolicy + | Params$Resource$Instances$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -109012,14 +108262,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setshieldedinstanceintegritypolicy; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instances$Setshieldedinstanceintegritypolicy; + params = {} as Params$Resource$Instances$Delete; options = {}; } @@ -109034,9 +108282,9 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options @@ -109057,8 +108305,7 @@ export namespace compute_preview { } /** - * Sets network tags - * for the specified instance to the data included in the request. + * Deletes an access config from an instance's network interface. * @example * ```js * // Before running the sample: @@ -109090,9 +108337,13 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setTags({ - * // Name of the instance scoping this request. + * const res = await compute.instances.deleteAccessConfig({ + * // The name of the access config to delete. + * accessConfig: 'placeholder-value', + * // The instance name for this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the network interface. + * networkInterface: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -109112,15 +108363,6 @@ export namespace compute_preview { * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "fingerprint": "my_fingerprint", - * // "items": [] - * // } - * }, * }); * console.log(res.data); * @@ -109129,6 +108371,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -109170,32 +108413,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTags( - params: Params$Resource$Instances$Settags, + deleteAccessConfig( + params: Params$Resource$Instances$Deleteaccessconfig, options: StreamMethodOptions ): Promise>; - setTags( - params?: Params$Resource$Instances$Settags, + deleteAccessConfig( + params?: Params$Resource$Instances$Deleteaccessconfig, options?: MethodOptions ): Promise>; - setTags( - params: Params$Resource$Instances$Settags, + deleteAccessConfig( + params: Params$Resource$Instances$Deleteaccessconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTags( - params: Params$Resource$Instances$Settags, + deleteAccessConfig( + params: Params$Resource$Instances$Deleteaccessconfig, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTags( - params: Params$Resource$Instances$Settags, + deleteAccessConfig( + params: Params$Resource$Instances$Deleteaccessconfig, callback: BodyResponseCallback ): void; - setTags(callback: BodyResponseCallback): void; - setTags( + deleteAccessConfig(callback: BodyResponseCallback): void; + deleteAccessConfig( paramsOrCallback?: - | Params$Resource$Instances$Settags + | Params$Resource$Instances$Deleteaccessconfig | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -109210,12 +108453,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Settags; + {}) as Params$Resource$Instances$Deleteaccessconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Settags; + params = {} as Params$Resource$Instances$Deleteaccessconfig; options = {}; } @@ -109230,7 +108473,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setTags' + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -109238,7 +108481,13 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], + requiredParams: [ + 'project', + 'zone', + 'instance', + 'accessConfig', + 'networkInterface', + ], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -109253,8 +108502,11 @@ export namespace compute_preview { } /** - * Simulates a host maintenance event on a VM. For more information, see - * Simulate a host maintenance event. + * Deletes one dynamic network interface from an active instance. + * InstancesDeleteNetworkInterfaceRequest indicates: + * - instance from which to delete, using project+zone+resource_id fields; + * - dynamic network interface to be deleted, using network_interface_name + * field; * @example * ```js * // Before running the sample: @@ -109286,9 +108538,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.simulateMaintenanceEvent({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instances.deleteNetworkInterface({ + * // The instance name for this request stored as resource_id. + * // Name should conform to RFC1035 or be an unsigned long integer. + * instance: 'placeholder-value', + * // The name of the dynamic network interface to be deleted from the instance. + * networkInterfaceName: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -109306,9 +108561,6 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Determines whether the customers receive notifications before migration. - * // Only applicable to SF vms. - * withExtendedNotifications: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); @@ -109319,6 +108571,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -109360,34 +108613,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - simulateMaintenanceEvent( - params: Params$Resource$Instances$Simulatemaintenanceevent, + deleteNetworkInterface( + params: Params$Resource$Instances$Deletenetworkinterface, options: StreamMethodOptions ): Promise>; - simulateMaintenanceEvent( - params?: Params$Resource$Instances$Simulatemaintenanceevent, + deleteNetworkInterface( + params?: Params$Resource$Instances$Deletenetworkinterface, options?: MethodOptions ): Promise>; - simulateMaintenanceEvent( - params: Params$Resource$Instances$Simulatemaintenanceevent, + deleteNetworkInterface( + params: Params$Resource$Instances$Deletenetworkinterface, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( - params: Params$Resource$Instances$Simulatemaintenanceevent, + deleteNetworkInterface( + params: Params$Resource$Instances$Deletenetworkinterface, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( - params: Params$Resource$Instances$Simulatemaintenanceevent, + deleteNetworkInterface( + params: Params$Resource$Instances$Deletenetworkinterface, callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( + deleteNetworkInterface( callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( + deleteNetworkInterface( paramsOrCallback?: - | Params$Resource$Instances$Simulatemaintenanceevent + | Params$Resource$Instances$Deletenetworkinterface | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -109402,12 +108655,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Simulatemaintenanceevent; + {}) as Params$Resource$Instances$Deletenetworkinterface; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Simulatemaintenanceevent; + params = {} as Params$Resource$Instances$Deletenetworkinterface; options = {}; } @@ -109422,7 +108675,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent' + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteNetworkInterface' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -109430,7 +108683,7 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], + requiredParams: ['project', 'zone', 'instance', 'networkInterfaceName'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -109445,9 +108698,7 @@ export namespace compute_preview { } /** - * Starts an instance that was stopped using theinstances().stop - * method. For more information, seeRestart an - * instance. + * Detaches a disk from an instance. * @example * ```js * // Before running the sample: @@ -109479,8 +108730,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.start({ - * // Name of the instance resource to start. + * const res = await compute.instances.detachDisk({ + * // The device name of the disk to detach. Make a get() request on + * // the instance to view currently attached disks and device names. + * deviceName: 'placeholder-value', + * // Instance name for this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -109509,6 +108763,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -109550,32 +108805,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - start( - params: Params$Resource$Instances$Start, + detachDisk( + params: Params$Resource$Instances$Detachdisk, options: StreamMethodOptions ): Promise>; - start( - params?: Params$Resource$Instances$Start, + detachDisk( + params?: Params$Resource$Instances$Detachdisk, options?: MethodOptions ): Promise>; - start( - params: Params$Resource$Instances$Start, + detachDisk( + params: Params$Resource$Instances$Detachdisk, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - start( - params: Params$Resource$Instances$Start, + detachDisk( + params: Params$Resource$Instances$Detachdisk, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - start( - params: Params$Resource$Instances$Start, + detachDisk( + params: Params$Resource$Instances$Detachdisk, callback: BodyResponseCallback ): void; - start(callback: BodyResponseCallback): void; - start( + detachDisk(callback: BodyResponseCallback): void; + detachDisk( paramsOrCallback?: - | Params$Resource$Instances$Start + | Params$Resource$Instances$Detachdisk | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -109589,12 +108844,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Start; + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Detachdisk; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Start; + params = {} as Params$Resource$Instances$Detachdisk; options = {}; } @@ -109609,7 +108865,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/start' + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/detachDisk' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -109617,7 +108873,7 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instance'], + requiredParams: ['project', 'zone', 'instance', 'deviceName'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -109632,9 +108888,7 @@ export namespace compute_preview { } /** - * Starts an instance that was stopped using theinstances().stop - * method. For more information, seeRestart an - * instance. + * Returns the specified Instance resource. * @example * ```js * // Before running the sample: @@ -109658,6 +108912,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -109666,176 +108921,9783 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.startWithEncryptionKey({ - * // Name of the instance resource to start. + * const res = await compute.instances.get({ + * // Name of the instance resource to return. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "disks": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "advancedMachineFeatures": {}, + * // "canIpForward": false, + * // "confidentialInstanceConfig": {}, + * // "cpuPlatform": "my_cpuPlatform", * // "creationTimestamp": "my_creationTimestamp", + * // "deletionProtection": false, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "disks": [], + * // "displayDevice": {}, + * // "fingerprint": "my_fingerprint", + * // "guestAccelerators": [], + * // "hostname": "my_hostname", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "instanceEncryptionKey": {}, + * // "keyRevocationActionType": "my_keyRevocationActionType", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "lastStartTimestamp": "my_lastStartTimestamp", + * // "lastStopTimestamp": "my_lastStopTimestamp", + * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", + * // "localSsdEncryptionMode": "my_localSsdEncryptionMode", + * // "machineType": "my_machineType", + * // "metadata": {}, + * // "minCpuPlatform": "my_minCpuPlatform", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "networkInterfaces": [], + * // "networkPerformanceConfig": {}, + * // "params": {}, + * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", + * // "reservationAffinity": {}, + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduling": {}, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "serviceAccounts": [], + * // "shieldedInstanceConfig": {}, + * // "shieldedInstanceIntegrityPolicy": {}, + * // "sourceMachineImage": "my_sourceMachineImage", + * // "sourceMachineImageEncryptionKey": {}, + * // "startRestricted": false, * // "status": "my_status", * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "tags": {}, + * // "workloadIdentityConfig": {}, * // "zone": "my_zone" * // } * } * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Instances$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Instances$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Instances$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instances$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instances$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Instances$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns effective firewalls applied to an interface of the instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.getEffectiveFirewalls({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the network interface to get the effective firewalls. + * networkInterface: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "firewallPolicys": [], + * // "firewalls": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getEffectiveFirewalls( + params: Params$Resource$Instances$Geteffectivefirewalls, + options: StreamMethodOptions + ): Promise>; + getEffectiveFirewalls( + params?: Params$Resource$Instances$Geteffectivefirewalls, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getEffectiveFirewalls( + params: Params$Resource$Instances$Geteffectivefirewalls, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( + params: Params$Resource$Instances$Geteffectivefirewalls, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( + params: Params$Resource$Instances$Geteffectivefirewalls, + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( + paramsOrCallback?: + | Params$Resource$Instances$Geteffectivefirewalls + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Geteffectivefirewalls; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Geteffectivefirewalls; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance', 'networkInterface'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Returns the specified guest attributes entry. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.getGuestAttributes({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Specifies the guest attributes path to be queried. + * queryPath: 'placeholder-value', + * // Specifies the key for the guest attributes entry. + * variableKey: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "kind": "my_kind", + * // "queryPath": "my_queryPath", + * // "queryValue": {}, + * // "selfLink": "my_selfLink", + * // "variableKey": "my_variableKey", + * // "variableValue": "my_variableValue" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getGuestAttributes( + params: Params$Resource$Instances$Getguestattributes, + options: StreamMethodOptions + ): Promise>; + getGuestAttributes( + params?: Params$Resource$Instances$Getguestattributes, + options?: MethodOptions + ): Promise>; + getGuestAttributes( + params: Params$Resource$Instances$Getguestattributes, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getGuestAttributes( + params: Params$Resource$Instances$Getguestattributes, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getGuestAttributes( + params: Params$Resource$Instances$Getguestattributes, + callback: BodyResponseCallback + ): void; + getGuestAttributes( + callback: BodyResponseCallback + ): void; + getGuestAttributes( + paramsOrCallback?: + | Params$Resource$Instances$Getguestattributes + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Getguestattributes; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Getguestattributes; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Instances$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Instances$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Instances$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Instances$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Instances$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Instances$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the screenshot from the specified instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.getScreenshot({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "contents": "my_contents", + * // "kind": "my_kind" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getScreenshot( + params: Params$Resource$Instances$Getscreenshot, + options: StreamMethodOptions + ): Promise>; + getScreenshot( + params?: Params$Resource$Instances$Getscreenshot, + options?: MethodOptions + ): Promise>; + getScreenshot( + params: Params$Resource$Instances$Getscreenshot, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getScreenshot( + params: Params$Resource$Instances$Getscreenshot, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getScreenshot( + params: Params$Resource$Instances$Getscreenshot, + callback: BodyResponseCallback + ): void; + getScreenshot(callback: BodyResponseCallback): void; + getScreenshot( + paramsOrCallback?: + | Params$Resource$Instances$Getscreenshot + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Getscreenshot; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Getscreenshot; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/screenshot' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the last 1 MB of serial port output from the specified instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.getSerialPortOutput({ + * // Name of the instance for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Specifies which COM or serial port to retrieve data from. + * port: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Specifies the starting byte position of the output to return. To start with + * // the first byte of output to the specified port, omit this field or set it + * // to `0`. + * // + * // If the output for that byte position is available, this field matches the + * // `start` parameter sent with the request. If the amount of serial console + * // output exceeds the size of the buffer (1 MB), the oldest output is + * // discarded and is no longer available. If the requested start position + * // refers to discarded output, the start position is adjusted to the oldest + * // output still available, and the adjusted start position is returned as the + * // `start` property value. + * // + * // You can also provide a negative start position, which translates to the + * // most recent number of bytes written to the serial port. For example, -3 is + * // interpreted as the most recent 3 bytes written to the serial console. Note + * // that the negative start is bounded by the retained buffer size, and the + * // returned serial console output will not exceed the max buffer size. + * start: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "contents": "my_contents", + * // "kind": "my_kind", + * // "next": "my_next", + * // "selfLink": "my_selfLink", + * // "start": "my_start" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getSerialPortOutput( + params: Params$Resource$Instances$Getserialportoutput, + options: StreamMethodOptions + ): Promise>; + getSerialPortOutput( + params?: Params$Resource$Instances$Getserialportoutput, + options?: MethodOptions + ): Promise>; + getSerialPortOutput( + params: Params$Resource$Instances$Getserialportoutput, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getSerialPortOutput( + params: Params$Resource$Instances$Getserialportoutput, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getSerialPortOutput( + params: Params$Resource$Instances$Getserialportoutput, + callback: BodyResponseCallback + ): void; + getSerialPortOutput( + callback: BodyResponseCallback + ): void; + getSerialPortOutput( + paramsOrCallback?: + | Params$Resource$Instances$Getserialportoutput + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Getserialportoutput; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Getserialportoutput; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/serialPort' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the Shielded Instance Identity of an instance + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.getShieldedInstanceIdentity({ + * // Name or id of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "eccP256EncryptionKey": {}, + * // "eccP256SigningKey": {}, + * // "encryptionKey": {}, + * // "kind": "my_kind", + * // "signingKey": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getShieldedInstanceIdentity( + params: Params$Resource$Instances$Getshieldedinstanceidentity, + options: StreamMethodOptions + ): Promise>; + getShieldedInstanceIdentity( + params?: Params$Resource$Instances$Getshieldedinstanceidentity, + options?: MethodOptions + ): Promise>; + getShieldedInstanceIdentity( + params: Params$Resource$Instances$Getshieldedinstanceidentity, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getShieldedInstanceIdentity( + params: Params$Resource$Instances$Getshieldedinstanceidentity, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getShieldedInstanceIdentity( + params: Params$Resource$Instances$Getshieldedinstanceidentity, + callback: BodyResponseCallback + ): void; + getShieldedInstanceIdentity( + callback: BodyResponseCallback + ): void; + getShieldedInstanceIdentity( + paramsOrCallback?: + | Params$Resource$Instances$Getshieldedinstanceidentity + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Getshieldedinstanceidentity; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Getshieldedinstanceidentity; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates an instance resource in the specified project using the data + * included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Specifies instance template to create the instance. + * // + * // This field is optional. It can be a full or partial URL. For example, the + * // following are all valid URLs to an instance template: + * // + * // + * // - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate + * // - projects/project/global/instanceTemplates/instanceTemplate + * // - global/instanceTemplates/instanceTemplate + * sourceInstanceTemplate: 'placeholder-value', + * // Specifies the machine image to use to create the instance. + * // + * // This field is optional. It can be a full or partial URL. For example, the + * // following are all valid URLs to a machine image: + * // + * // + * // - https://www.googleapis.com/compute/v1/projects/project/global/global/machineImages/machineImage + * // - projects/project/global/global/machineImages/machineImage + * // - global/machineImages/machineImage + * sourceMachineImage: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advancedMachineFeatures": {}, + * // "canIpForward": false, + * // "confidentialInstanceConfig": {}, + * // "cpuPlatform": "my_cpuPlatform", + * // "creationTimestamp": "my_creationTimestamp", + * // "deletionProtection": false, + * // "description": "my_description", + * // "disks": [], + * // "displayDevice": {}, + * // "fingerprint": "my_fingerprint", + * // "guestAccelerators": [], + * // "hostname": "my_hostname", + * // "id": "my_id", + * // "instanceEncryptionKey": {}, + * // "keyRevocationActionType": "my_keyRevocationActionType", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "lastStartTimestamp": "my_lastStartTimestamp", + * // "lastStopTimestamp": "my_lastStopTimestamp", + * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", + * // "localSsdEncryptionMode": "my_localSsdEncryptionMode", + * // "machineType": "my_machineType", + * // "metadata": {}, + * // "minCpuPlatform": "my_minCpuPlatform", + * // "name": "my_name", + * // "networkInterfaces": [], + * // "networkPerformanceConfig": {}, + * // "params": {}, + * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", + * // "reservationAffinity": {}, + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduling": {}, + * // "selfLink": "my_selfLink", + * // "serviceAccounts": [], + * // "shieldedInstanceConfig": {}, + * // "shieldedInstanceIntegrityPolicy": {}, + * // "sourceMachineImage": "my_sourceMachineImage", + * // "sourceMachineImageEncryptionKey": {}, + * // "startRestricted": false, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "tags": {}, + * // "workloadIdentityConfig": {}, + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + insert( + params: Params$Resource$Instances$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Instances$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Instances$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Instances$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Instances$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Instances$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/zones/{zone}/instances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of instances contained within + * the specified zone. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Instances$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Instances$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Instances$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Instances$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Instances$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Instances$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/zones/{zone}/instances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of resources that refer to the VM instance specified in + * the request. For example, if the VM instance is part of a managed or + * unmanaged instance group, the referrers list includes the instance group. + * For more information, readViewing + * referrers to VM instances. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.listReferrers({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Name of the target instance scoping this request, or '-' if the + * // request should span over all instances in the container. + * instance: '-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + listReferrers( + params: Params$Resource$Instances$Listreferrers, + options: StreamMethodOptions + ): Promise>; + listReferrers( + params?: Params$Resource$Instances$Listreferrers, + options?: MethodOptions + ): Promise>; + listReferrers( + params: Params$Resource$Instances$Listreferrers, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listReferrers( + params: Params$Resource$Instances$Listreferrers, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listReferrers( + params: Params$Resource$Instances$Listreferrers, + callback: BodyResponseCallback + ): void; + listReferrers( + callback: BodyResponseCallback + ): void; + listReferrers( + paramsOrCallback?: + | Params$Resource$Instances$Listreferrers + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Listreferrers; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Listreferrers; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/referrers' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Perform a manual maintenance on the instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.performMaintenance({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + performMaintenance( + params: Params$Resource$Instances$Performmaintenance, + options: StreamMethodOptions + ): Promise>; + performMaintenance( + params?: Params$Resource$Instances$Performmaintenance, + options?: MethodOptions + ): Promise>; + performMaintenance( + params: Params$Resource$Instances$Performmaintenance, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + performMaintenance( + params: Params$Resource$Instances$Performmaintenance, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + performMaintenance( + params: Params$Resource$Instances$Performmaintenance, + callback: BodyResponseCallback + ): void; + performMaintenance(callback: BodyResponseCallback): void; + performMaintenance( + paramsOrCallback?: + | Params$Resource$Instances$Performmaintenance + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Performmaintenance; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Performmaintenance; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/performMaintenance' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Removes resource policies from an instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.removeResourcePolicies({ + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "resourcePolicies": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + removeResourcePolicies( + params: Params$Resource$Instances$Removeresourcepolicies, + options: StreamMethodOptions + ): Promise>; + removeResourcePolicies( + params?: Params$Resource$Instances$Removeresourcepolicies, + options?: MethodOptions + ): Promise>; + removeResourcePolicies( + params: Params$Resource$Instances$Removeresourcepolicies, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeResourcePolicies( + params: Params$Resource$Instances$Removeresourcepolicies, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeResourcePolicies( + params: Params$Resource$Instances$Removeresourcepolicies, + callback: BodyResponseCallback + ): void; + removeResourcePolicies( + callback: BodyResponseCallback + ): void; + removeResourcePolicies( + paramsOrCallback?: + | Params$Resource$Instances$Removeresourcepolicies + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Removeresourcepolicies; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Removeresourcepolicies; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Mark the host as faulty and try to restart the instance on a new host. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.reportHostAsFaulty({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "disruptionSchedule": "my_disruptionSchedule", + * // "faultReasons": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, + options: StreamMethodOptions + ): Promise>; + reportHostAsFaulty( + params?: Params$Resource$Instances$Reporthostasfaulty, + options?: MethodOptions + ): Promise>; + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, + callback: BodyResponseCallback + ): void; + reportHostAsFaulty(callback: BodyResponseCallback): void; + reportHostAsFaulty( + paramsOrCallback?: + | Params$Resource$Instances$Reporthostasfaulty + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Reporthostasfaulty; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Reporthostasfaulty; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Performs a reset on the instance. This is a hard reset. The VM + * does not do a graceful shutdown. For more information, seeResetting + * an instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.reset({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Mode of reset operation. Defaults to HARD_RESET if not provided. + * resetMode: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + reset( + params: Params$Resource$Instances$Reset, + options: StreamMethodOptions + ): Promise>; + reset( + params?: Params$Resource$Instances$Reset, + options?: MethodOptions + ): Promise>; + reset( + params: Params$Resource$Instances$Reset, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reset( + params: Params$Resource$Instances$Reset, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + reset( + params: Params$Resource$Instances$Reset, + callback: BodyResponseCallback + ): void; + reset(callback: BodyResponseCallback): void; + reset( + paramsOrCallback?: + | Params$Resource$Instances$Reset + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Reset; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Reset; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reset' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Resumes an instance that was suspended using theinstances().suspend + * method. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.resume({ + * // Name of the instance resource to resume. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + resume( + params: Params$Resource$Instances$Resume, + options: StreamMethodOptions + ): Promise>; + resume( + params?: Params$Resource$Instances$Resume, + options?: MethodOptions + ): Promise>; + resume( + params: Params$Resource$Instances$Resume, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resume( + params: Params$Resource$Instances$Resume, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resume( + params: Params$Resource$Instances$Resume, + callback: BodyResponseCallback + ): void; + resume(callback: BodyResponseCallback): void; + resume( + paramsOrCallback?: + | Params$Resource$Instances$Resume + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Resume; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Resume; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/resume' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sends diagnostic interrupt to the instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.sendDiagnosticInterrupt({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + sendDiagnosticInterrupt( + params: Params$Resource$Instances$Senddiagnosticinterrupt, + options: StreamMethodOptions + ): Promise>; + sendDiagnosticInterrupt( + params?: Params$Resource$Instances$Senddiagnosticinterrupt, + options?: MethodOptions + ): Promise>; + sendDiagnosticInterrupt( + params: Params$Resource$Instances$Senddiagnosticinterrupt, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + sendDiagnosticInterrupt( + params: Params$Resource$Instances$Senddiagnosticinterrupt, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + sendDiagnosticInterrupt( + params: Params$Resource$Instances$Senddiagnosticinterrupt, + callback: BodyResponseCallback + ): void; + sendDiagnosticInterrupt(callback: BodyResponseCallback): void; + sendDiagnosticInterrupt( + paramsOrCallback?: + | Params$Resource$Instances$Senddiagnosticinterrupt + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Senddiagnosticinterrupt; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Senddiagnosticinterrupt; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets deletion protection on the instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setDeletionProtection({ + * // Whether the resource should be protected against deletion. + * deletionProtection: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setDeletionProtection( + params: Params$Resource$Instances$Setdeletionprotection, + options: StreamMethodOptions + ): Promise>; + setDeletionProtection( + params?: Params$Resource$Instances$Setdeletionprotection, + options?: MethodOptions + ): Promise>; + setDeletionProtection( + params: Params$Resource$Instances$Setdeletionprotection, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setDeletionProtection( + params: Params$Resource$Instances$Setdeletionprotection, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setDeletionProtection( + params: Params$Resource$Instances$Setdeletionprotection, + callback: BodyResponseCallback + ): void; + setDeletionProtection( + callback: BodyResponseCallback + ): void; + setDeletionProtection( + paramsOrCallback?: + | Params$Resource$Instances$Setdeletionprotection + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setdeletionprotection; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setdeletionprotection; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the auto-delete flag for a disk attached to an instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setDiskAutoDelete({ + * // Whether to auto-delete the disk when the instance is deleted. + * autoDelete: 'placeholder-value', + * // The device name of the disk to modify. Make a get() request + * // on the instance to view currently attached disks and device names. + * deviceName: '\w[\w.-]{0,254}', + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setDiskAutoDelete( + params: Params$Resource$Instances$Setdiskautodelete, + options: StreamMethodOptions + ): Promise>; + setDiskAutoDelete( + params?: Params$Resource$Instances$Setdiskautodelete, + options?: MethodOptions + ): Promise>; + setDiskAutoDelete( + params: Params$Resource$Instances$Setdiskautodelete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setDiskAutoDelete( + params: Params$Resource$Instances$Setdiskautodelete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setDiskAutoDelete( + params: Params$Resource$Instances$Setdiskautodelete, + callback: BodyResponseCallback + ): void; + setDiskAutoDelete(callback: BodyResponseCallback): void; + setDiskAutoDelete( + paramsOrCallback?: + | Params$Resource$Instances$Setdiskautodelete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setdiskautodelete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setdiskautodelete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: [ + 'project', + 'zone', + 'instance', + 'autoDelete', + 'deviceName', + ], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Instances$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Instances$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Instances$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instances$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instances$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Instances$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets labels on an instance. To learn more about labels, read theLabeling + * Resources documentation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setLabels({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setLabels( + params: Params$Resource$Instances$Setlabels, + options: StreamMethodOptions + ): Promise>; + setLabels( + params?: Params$Resource$Instances$Setlabels, + options?: MethodOptions + ): Promise>; + setLabels( + params: Params$Resource$Instances$Setlabels, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Instances$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Instances$Setlabels, + callback: BodyResponseCallback + ): void; + setLabels(callback: BodyResponseCallback): void; + setLabels( + paramsOrCallback?: + | Params$Resource$Instances$Setlabels + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setlabels; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setlabels; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setLabels' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Changes the number and/or type of accelerator for a stopped instance to the + * values specified in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setMachineResources({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "guestAccelerators": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setMachineResources( + params: Params$Resource$Instances$Setmachineresources, + options: StreamMethodOptions + ): Promise>; + setMachineResources( + params?: Params$Resource$Instances$Setmachineresources, + options?: MethodOptions + ): Promise>; + setMachineResources( + params: Params$Resource$Instances$Setmachineresources, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setMachineResources( + params: Params$Resource$Instances$Setmachineresources, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setMachineResources( + params: Params$Resource$Instances$Setmachineresources, + callback: BodyResponseCallback + ): void; + setMachineResources(callback: BodyResponseCallback): void; + setMachineResources( + paramsOrCallback?: + | Params$Resource$Instances$Setmachineresources + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setmachineresources; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setmachineresources; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineResources' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Changes the machine type for a stopped instance to the machine + * type specified in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setMachineType({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "machineType": "my_machineType" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setMachineType( + params: Params$Resource$Instances$Setmachinetype, + options: StreamMethodOptions + ): Promise>; + setMachineType( + params?: Params$Resource$Instances$Setmachinetype, + options?: MethodOptions + ): Promise>; + setMachineType( + params: Params$Resource$Instances$Setmachinetype, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setMachineType( + params: Params$Resource$Instances$Setmachinetype, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setMachineType( + params: Params$Resource$Instances$Setmachinetype, + callback: BodyResponseCallback + ): void; + setMachineType(callback: BodyResponseCallback): void; + setMachineType( + paramsOrCallback?: + | Params$Resource$Instances$Setmachinetype + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setmachinetype; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setmachinetype; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineType' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets metadata for the specified instance to the data included + * in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setMetadata({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "items": [], + * // "kind": "my_kind" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setMetadata( + params: Params$Resource$Instances$Setmetadata, + options: StreamMethodOptions + ): Promise>; + setMetadata( + params?: Params$Resource$Instances$Setmetadata, + options?: MethodOptions + ): Promise>; + setMetadata( + params: Params$Resource$Instances$Setmetadata, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setMetadata( + params: Params$Resource$Instances$Setmetadata, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setMetadata( + params: Params$Resource$Instances$Setmetadata, + callback: BodyResponseCallback + ): void; + setMetadata(callback: BodyResponseCallback): void; + setMetadata( + paramsOrCallback?: + | Params$Resource$Instances$Setmetadata + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setmetadata; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setmetadata; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMetadata' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Changes the minimum CPU platform that this instance should use. + * This method can only + * be called on a stopped instance. For more information, readSpecifying a + * Minimum CPU Platform. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setMinCpuPlatform({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "minCpuPlatform": "my_minCpuPlatform" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setMinCpuPlatform( + params: Params$Resource$Instances$Setmincpuplatform, + options: StreamMethodOptions + ): Promise>; + setMinCpuPlatform( + params?: Params$Resource$Instances$Setmincpuplatform, + options?: MethodOptions + ): Promise>; + setMinCpuPlatform( + params: Params$Resource$Instances$Setmincpuplatform, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setMinCpuPlatform( + params: Params$Resource$Instances$Setmincpuplatform, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setMinCpuPlatform( + params: Params$Resource$Instances$Setmincpuplatform, + callback: BodyResponseCallback + ): void; + setMinCpuPlatform(callback: BodyResponseCallback): void; + setMinCpuPlatform( + paramsOrCallback?: + | Params$Resource$Instances$Setmincpuplatform + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setmincpuplatform; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setmincpuplatform; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets name of an instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setName({ + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "currentName": "my_currentName", + * // "name": "my_name" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setName( + params: Params$Resource$Instances$Setname, + options: StreamMethodOptions + ): Promise>; + setName( + params?: Params$Resource$Instances$Setname, + options?: MethodOptions + ): Promise>; + setName( + params: Params$Resource$Instances$Setname, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setName( + params: Params$Resource$Instances$Setname, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setName( + params: Params$Resource$Instances$Setname, + callback: BodyResponseCallback + ): void; + setName(callback: BodyResponseCallback): void; + setName( + paramsOrCallback?: + | Params$Resource$Instances$Setname + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setname; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setname; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setName' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets an instance's scheduling options. You can only call this method on astopped instance, + * that is, a VM instance that is in a `TERMINATED` state. SeeInstance Life + * Cycle for more information on the possible instance states. + * For more information about setting scheduling options for a VM, seeSet + * VM host maintenance policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setScheduling({ + * // Instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "automaticRestart": false, + * // "availabilityDomain": 0, + * // "exposeHostTopology": false, + * // "gracefulShutdown": {}, + * // "hostErrorTimeoutSeconds": 0, + * // "instanceTerminationAction": "my_instanceTerminationAction", + * // "localSsdRecoveryTimeout": {}, + * // "locationHint": "my_locationHint", + * // "maxRunDuration": {}, + * // "minNodeCpus": 0, + * // "nodeAffinities": [], + * // "onHostMaintenance": "my_onHostMaintenance", + * // "onInstanceStopAction": {}, + * // "preemptible": false, + * // "preemptionNoticeDuration": {}, + * // "protectionTier": "my_protectionTier", + * // "provisioningModel": "my_provisioningModel", + * // "skipGuestOsShutdown": false, + * // "terminationTime": "my_terminationTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setScheduling( + params: Params$Resource$Instances$Setscheduling, + options: StreamMethodOptions + ): Promise>; + setScheduling( + params?: Params$Resource$Instances$Setscheduling, + options?: MethodOptions + ): Promise>; + setScheduling( + params: Params$Resource$Instances$Setscheduling, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setScheduling( + params: Params$Resource$Instances$Setscheduling, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setScheduling( + params: Params$Resource$Instances$Setscheduling, + callback: BodyResponseCallback + ): void; + setScheduling(callback: BodyResponseCallback): void; + setScheduling( + paramsOrCallback?: + | Params$Resource$Instances$Setscheduling + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setscheduling; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setscheduling; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setScheduling' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the Google Cloud Armor security policy for the specified instance. + * For more information, seeGoogle + * Cloud Armor Overview + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setSecurityPolicy({ + * // Name of the Instance resource to which the security policy should be + * // set. The name should conform to RFC1035. + * instance: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name of the zone scoping this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkInterfaces": [], + * // "securityPolicy": "my_securityPolicy" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setSecurityPolicy( + params: Params$Resource$Instances$Setsecuritypolicy, + options: StreamMethodOptions + ): Promise>; + setSecurityPolicy( + params?: Params$Resource$Instances$Setsecuritypolicy, + options?: MethodOptions + ): Promise>; + setSecurityPolicy( + params: Params$Resource$Instances$Setsecuritypolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setSecurityPolicy( + params: Params$Resource$Instances$Setsecuritypolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setSecurityPolicy( + params: Params$Resource$Instances$Setsecuritypolicy, + callback: BodyResponseCallback + ): void; + setSecurityPolicy(callback: BodyResponseCallback): void; + setSecurityPolicy( + paramsOrCallback?: + | Params$Resource$Instances$Setsecuritypolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setsecuritypolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setsecuritypolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setSecurityPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the service account on the instance. For more information, + * readChanging + * the service account and access scopes for an instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setServiceAccount({ + * // Name of the instance resource to start. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "email": "my_email", + * // "scopes": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setServiceAccount( + params: Params$Resource$Instances$Setserviceaccount, + options: StreamMethodOptions + ): Promise>; + setServiceAccount( + params?: Params$Resource$Instances$Setserviceaccount, + options?: MethodOptions + ): Promise>; + setServiceAccount( + params: Params$Resource$Instances$Setserviceaccount, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setServiceAccount( + params: Params$Resource$Instances$Setserviceaccount, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setServiceAccount( + params: Params$Resource$Instances$Setserviceaccount, + callback: BodyResponseCallback + ): void; + setServiceAccount(callback: BodyResponseCallback): void; + setServiceAccount( + paramsOrCallback?: + | Params$Resource$Instances$Setserviceaccount + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setserviceaccount; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Setserviceaccount; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the Shielded Instance integrity policy for an instance. You can + * only use this method on a running instance. This method + * supports PATCH semantics and uses the JSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setShieldedInstanceIntegrityPolicy({ + * // Name or id of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "updateAutoLearnPolicy": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setShieldedInstanceIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + options: StreamMethodOptions + ): Promise>; + setShieldedInstanceIntegrityPolicy( + params?: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + options?: MethodOptions + ): Promise>; + setShieldedInstanceIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setShieldedInstanceIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setShieldedInstanceIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, + callback: BodyResponseCallback + ): void; + setShieldedInstanceIntegrityPolicy( + callback: BodyResponseCallback + ): void; + setShieldedInstanceIntegrityPolicy( + paramsOrCallback?: + | Params$Resource$Instances$Setshieldedinstanceintegritypolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setshieldedinstanceintegritypolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instances$Setshieldedinstanceintegritypolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets network tags + * for the specified instance to the data included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.setTags({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "items": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setTags( + params: Params$Resource$Instances$Settags, + options: StreamMethodOptions + ): Promise>; + setTags( + params?: Params$Resource$Instances$Settags, + options?: MethodOptions + ): Promise>; + setTags( + params: Params$Resource$Instances$Settags, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setTags( + params: Params$Resource$Instances$Settags, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setTags( + params: Params$Resource$Instances$Settags, + callback: BodyResponseCallback + ): void; + setTags(callback: BodyResponseCallback): void; + setTags( + paramsOrCallback?: + | Params$Resource$Instances$Settags + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Settags; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Settags; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setTags' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Simulates a host maintenance event on a VM. For more information, see + * Simulate a host maintenance event. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.simulateMaintenanceEvent({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Determines whether the customers receive notifications before migration. + * // Only applicable to SF vms. + * withExtendedNotifications: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + simulateMaintenanceEvent( + params: Params$Resource$Instances$Simulatemaintenanceevent, + options: StreamMethodOptions + ): Promise>; + simulateMaintenanceEvent( + params?: Params$Resource$Instances$Simulatemaintenanceevent, + options?: MethodOptions + ): Promise>; + simulateMaintenanceEvent( + params: Params$Resource$Instances$Simulatemaintenanceevent, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + simulateMaintenanceEvent( + params: Params$Resource$Instances$Simulatemaintenanceevent, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + simulateMaintenanceEvent( + params: Params$Resource$Instances$Simulatemaintenanceevent, + callback: BodyResponseCallback + ): void; + simulateMaintenanceEvent( + callback: BodyResponseCallback + ): void; + simulateMaintenanceEvent( + paramsOrCallback?: + | Params$Resource$Instances$Simulatemaintenanceevent + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Simulatemaintenanceevent; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Simulatemaintenanceevent; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Starts an instance that was stopped using theinstances().stop + * method. For more information, seeRestart an + * instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.start({ + * // Name of the instance resource to start. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + start( + params: Params$Resource$Instances$Start, + options: StreamMethodOptions + ): Promise>; + start( + params?: Params$Resource$Instances$Start, + options?: MethodOptions + ): Promise>; + start( + params: Params$Resource$Instances$Start, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + start( + params: Params$Resource$Instances$Start, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + start( + params: Params$Resource$Instances$Start, + callback: BodyResponseCallback + ): void; + start(callback: BodyResponseCallback): void; + start( + paramsOrCallback?: + | Params$Resource$Instances$Start + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Start; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Start; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/start' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Starts an instance that was stopped using theinstances().stop + * method. For more information, seeRestart an + * instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.startWithEncryptionKey({ + * // Name of the instance resource to start. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "disks": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + startWithEncryptionKey( + params: Params$Resource$Instances$Startwithencryptionkey, + options: StreamMethodOptions + ): Promise>; + startWithEncryptionKey( + params?: Params$Resource$Instances$Startwithencryptionkey, + options?: MethodOptions + ): Promise>; + startWithEncryptionKey( + params: Params$Resource$Instances$Startwithencryptionkey, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startWithEncryptionKey( + params: Params$Resource$Instances$Startwithencryptionkey, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startWithEncryptionKey( + params: Params$Resource$Instances$Startwithencryptionkey, + callback: BodyResponseCallback + ): void; + startWithEncryptionKey( + callback: BodyResponseCallback + ): void; + startWithEncryptionKey( + paramsOrCallback?: + | Params$Resource$Instances$Startwithencryptionkey + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Startwithencryptionkey; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Startwithencryptionkey; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Stops a running instance, shutting it down cleanly, and allows + * you to restart the instance at a later time. Stopped instances do not incur + * VM usage charges while they are stopped. However, resources that the VM is + * using, such as persistent disks and static IP addresses, will continue to + * be charged until they are deleted. For more information, seeStopping + * an instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.stop({ + * // This property is required if the instance has any attached Local SSD disks. + * // If false, Local SSD data will be preserved when the instance is suspended. + * // If true, the contents of any attached Local SSD disks will be discarded. + * discardLocalSsd: 'placeholder-value', + * // Name of the instance resource to stop. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // If set to true, Graceful Shutdown is skipped. + * noGracefulShutdown: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + stop( + params: Params$Resource$Instances$Stop, + options: StreamMethodOptions + ): Promise>; + stop( + params?: Params$Resource$Instances$Stop, + options?: MethodOptions + ): Promise>; + stop( + params: Params$Resource$Instances$Stop, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stop( + params: Params$Resource$Instances$Stop, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stop( + params: Params$Resource$Instances$Stop, + callback: BodyResponseCallback + ): void; + stop(callback: BodyResponseCallback): void; + stop( + paramsOrCallback?: + | Params$Resource$Instances$Stop + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Stop; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Stop; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/stop' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * This method suspends a running instance, saving its state to persistent + * storage, and allows you to resume the instance at a later time. Suspended + * instances have no compute costs (cores or RAM), and incur only storage + * charges for the saved VM memory and localSSD data. Any charged resources + * the virtual machine was using, such as persistent disks and static IP + * addresses, will continue to be charged while the instance is suspended. + * For more information, see + * Suspending and resuming an instance. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.suspend({ + * // This property is required if the instance has any attached Local SSD disks. + * // If false, Local SSD data will be preserved when the instance is suspended. + * // If true, the contents of any attached Local SSD disks will be discarded. + * discardLocalSsd: 'placeholder-value', + * // Name of the instance resource to suspend. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + suspend( + params: Params$Resource$Instances$Suspend, + options: StreamMethodOptions + ): Promise>; + suspend( + params?: Params$Resource$Instances$Suspend, + options?: MethodOptions + ): Promise>; + suspend( + params: Params$Resource$Instances$Suspend, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspend( + params: Params$Resource$Instances$Suspend, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspend( + params: Params$Resource$Instances$Suspend, + callback: BodyResponseCallback + ): void; + suspend(callback: BodyResponseCallback): void; + suspend( + paramsOrCallback?: + | Params$Resource$Instances$Suspend + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Suspend; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Suspend; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/suspend' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Instances$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Instances$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Instances$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instances$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instances$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Instances$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates an instance only if the necessary resources are available. This + * method can update only a specific set of instance properties. See + * Updating a running instance for a list of updatable instance + * properties. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.update({ + * // Whether to discard local SSDs from the instance during restart + * // default value is false. + * discardLocalSsd: 'placeholder-value', + * // Name of the instance resource to update. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Specifies the action to take when updating an instance even if the + * // updated properties do not require it. If not specified, then + * // Compute Engine acts based on the minimum action that the updated + * // properties require. + * minimalAction: 'placeholder-value', + * // Specifies the most disruptive action that can be taken on the instance + * // as part of the update. Compute Engine returns an error if the + * // instance properties require a more disruptive action as part of the + * // instance update. Valid options from lowest to highest are + * // NO_EFFECT, REFRESH, and RESTART. + * mostDisruptiveAllowedAction: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advancedMachineFeatures": {}, + * // "canIpForward": false, + * // "confidentialInstanceConfig": {}, + * // "cpuPlatform": "my_cpuPlatform", + * // "creationTimestamp": "my_creationTimestamp", + * // "deletionProtection": false, + * // "description": "my_description", + * // "disks": [], + * // "displayDevice": {}, + * // "fingerprint": "my_fingerprint", + * // "guestAccelerators": [], + * // "hostname": "my_hostname", + * // "id": "my_id", + * // "instanceEncryptionKey": {}, + * // "keyRevocationActionType": "my_keyRevocationActionType", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "lastStartTimestamp": "my_lastStartTimestamp", + * // "lastStopTimestamp": "my_lastStopTimestamp", + * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", + * // "localSsdEncryptionMode": "my_localSsdEncryptionMode", + * // "machineType": "my_machineType", + * // "metadata": {}, + * // "minCpuPlatform": "my_minCpuPlatform", + * // "name": "my_name", + * // "networkInterfaces": [], + * // "networkPerformanceConfig": {}, + * // "params": {}, + * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", + * // "reservationAffinity": {}, + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduling": {}, + * // "selfLink": "my_selfLink", + * // "serviceAccounts": [], + * // "shieldedInstanceConfig": {}, + * // "shieldedInstanceIntegrityPolicy": {}, + * // "sourceMachineImage": "my_sourceMachineImage", + * // "sourceMachineImageEncryptionKey": {}, + * // "startRestricted": false, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "tags": {}, + * // "workloadIdentityConfig": {}, + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + update( + params: Params$Resource$Instances$Update, + options: StreamMethodOptions + ): Promise>; + update( + params?: Params$Resource$Instances$Update, + options?: MethodOptions + ): Promise>; + update( + params: Params$Resource$Instances$Update, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Instances$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Instances$Update, + callback: BodyResponseCallback + ): void; + update(callback: BodyResponseCallback): void; + update( + paramsOrCallback?: + | Params$Resource$Instances$Update + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Update; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Update; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PUT', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the specified access config from an instance's network interface + * with the data included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.updateAccessConfig({ + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the network interface where the access config is attached. + * networkInterface: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "externalIpv6": "my_externalIpv6", + * // "externalIpv6PrefixLength": 0, + * // "ipCollection": "my_ipCollection", + * // "kind": "my_kind", + * // "name": "my_name", + * // "natIP": "my_natIP", + * // "networkTier": "my_networkTier", + * // "publicPtrDomainName": "my_publicPtrDomainName", + * // "securityPolicy": "my_securityPolicy", + * // "setPublicPtr": false, + * // "type": "my_type" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + updateAccessConfig( + params: Params$Resource$Instances$Updateaccessconfig, + options: StreamMethodOptions + ): Promise>; + updateAccessConfig( + params?: Params$Resource$Instances$Updateaccessconfig, + options?: MethodOptions + ): Promise>; + updateAccessConfig( + params: Params$Resource$Instances$Updateaccessconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateAccessConfig( + params: Params$Resource$Instances$Updateaccessconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateAccessConfig( + params: Params$Resource$Instances$Updateaccessconfig, + callback: BodyResponseCallback + ): void; + updateAccessConfig(callback: BodyResponseCallback): void; + updateAccessConfig( + paramsOrCallback?: + | Params$Resource$Instances$Updateaccessconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Updateaccessconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Updateaccessconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance', 'networkInterface'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the Display config for a VM instance. You can + * only use this method on a stopped VM instance. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.updateDisplayDevice({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "enableDisplay": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + updateDisplayDevice( + params: Params$Resource$Instances$Updatedisplaydevice, + options: StreamMethodOptions + ): Promise>; + updateDisplayDevice( + params?: Params$Resource$Instances$Updatedisplaydevice, + options?: MethodOptions + ): Promise>; + updateDisplayDevice( + params: Params$Resource$Instances$Updatedisplaydevice, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateDisplayDevice( + params: Params$Resource$Instances$Updatedisplaydevice, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateDisplayDevice( + params: Params$Resource$Instances$Updatedisplaydevice, + callback: BodyResponseCallback + ): void; + updateDisplayDevice(callback: BodyResponseCallback): void; + updateDisplayDevice( + paramsOrCallback?: + | Params$Resource$Instances$Updatedisplaydevice + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Updatedisplaydevice; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Updatedisplaydevice; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates an instance's network interface. This method can only update an + * interface's alias IP range and attached network. See Modifying + * alias IP ranges for an existing instance for instructions on + * changing alias IP ranges. See Migrating + * a VM between networks for instructions on migrating an interface. + * This method follows PATCH semantics. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.updateNetworkInterface({ + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the network interface to update. + * networkInterface: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessConfigs": [], + * // "aliasIpRanges": [], + * // "aliasIpv6Ranges": [], + * // "enableVpcScopedDns": false, + * // "fingerprint": "my_fingerprint", + * // "igmpQuery": "my_igmpQuery", + * // "internalIpv6PrefixLength": 0, + * // "ipv6AccessConfigs": [], + * // "ipv6AccessType": "my_ipv6AccessType", + * // "ipv6Address": "my_ipv6Address", + * // "kind": "my_kind", + * // "name": "my_name", + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkIP": "my_networkIP", + * // "nicType": "my_nicType", + * // "parentNicName": "my_parentNicName", + * // "queueCount": 0, + * // "serviceClassId": "my_serviceClassId", + * // "stackType": "my_stackType", + * // "subnetwork": "my_subnetwork", + * // "vlan": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + updateNetworkInterface( + params: Params$Resource$Instances$Updatenetworkinterface, + options: StreamMethodOptions + ): Promise>; + updateNetworkInterface( + params?: Params$Resource$Instances$Updatenetworkinterface, + options?: MethodOptions + ): Promise>; + updateNetworkInterface( + params: Params$Resource$Instances$Updatenetworkinterface, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateNetworkInterface( + params: Params$Resource$Instances$Updatenetworkinterface, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateNetworkInterface( + params: Params$Resource$Instances$Updatenetworkinterface, + callback: BodyResponseCallback + ): void; + updateNetworkInterface( + callback: BodyResponseCallback + ): void; + updateNetworkInterface( + paramsOrCallback?: + | Params$Resource$Instances$Updatenetworkinterface + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Updatenetworkinterface; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Updatenetworkinterface; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance', 'networkInterface'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the Shielded Instance config for an instance. You can + * only use this method on a stopped instance. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instances.updateShieldedInstanceConfig({ + * // Name or id of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "enableIntegrityMonitoring": false, + * // "enableSecureBoot": false, + * // "enableVtpm": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + updateShieldedInstanceConfig( + params: Params$Resource$Instances$Updateshieldedinstanceconfig, + options: StreamMethodOptions + ): Promise>; + updateShieldedInstanceConfig( + params?: Params$Resource$Instances$Updateshieldedinstanceconfig, + options?: MethodOptions + ): Promise>; + updateShieldedInstanceConfig( + params: Params$Resource$Instances$Updateshieldedinstanceconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateShieldedInstanceConfig( + params: Params$Resource$Instances$Updateshieldedinstanceconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updateShieldedInstanceConfig( + params: Params$Resource$Instances$Updateshieldedinstanceconfig, + callback: BodyResponseCallback + ): void; + updateShieldedInstanceConfig( + callback: BodyResponseCallback + ): void; + updateShieldedInstanceConfig( + paramsOrCallback?: + | Params$Resource$Instances$Updateshieldedinstanceconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Updateshieldedinstanceconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Updateshieldedinstanceconfig; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Instances$Addaccessconfig extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * The name of the network interface to add to this instance. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AccessConfig; + } + export interface Params$Resource$Instances$Addnetworkinterface extends StandardParameters { + /** + * The instance name for this request stored as resource_id. + * Name should conform to RFC1035 or be an unsigned long integer. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkInterface; + } + export interface Params$Resource$Instances$Addresourcepolicies extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesAddResourcePoliciesRequest; + } + export interface Params$Resource$Instances$Aggregatedlist extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Instances$Attachdisk extends StandardParameters { + /** + * Whether to force attach the regional disk even if it's currently attached + * to another instance. If you try to force attach a zonal disk to an + * instance, you will receive an error. + */ + forceAttach?: boolean; + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AttachedDisk; + } + export interface Params$Resource$Instances$Bulkinsert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkInsertInstanceResource; + } + export interface Params$Resource$Instances$Delete extends StandardParameters { + /** + * Name of the instance resource to delete. + */ + instance?: string; + /** + * If set to true, Graceful Shutdown is skipped. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Deleteaccessconfig extends StandardParameters { + /** + * The name of the access config to delete. + */ + accessConfig?: string; + /** + * The instance name for this request. + */ + instance?: string; + /** + * The name of the network interface. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Deletenetworkinterface extends StandardParameters { + /** + * The instance name for this request stored as resource_id. + * Name should conform to RFC1035 or be an unsigned long integer. + */ + instance?: string; + /** + * The name of the dynamic network interface to be deleted from the instance. + */ + networkInterfaceName?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Detachdisk extends StandardParameters { + /** + * The device name of the disk to detach. Make a get() request on + * the instance to view currently attached disks and device names. + */ + deviceName?: string; + /** + * Instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Get extends StandardParameters { + /** + * Name of the instance resource to return. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Geteffectivefirewalls extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * The name of the network interface to get the effective firewalls. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getguestattributes extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Specifies the guest attributes path to be queried. + */ + queryPath?: string; + /** + * Specifies the key for the guest attributes entry. + */ + variableKey?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getscreenshot extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getserialportoutput extends StandardParameters { + /** + * Name of the instance for this request. + */ + instance?: string; + /** + * Specifies which COM or serial port to retrieve data from. + */ + port?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Specifies the starting byte position of the output to return. To start with + * the first byte of output to the specified port, omit this field or set it + * to `0`. + * + * If the output for that byte position is available, this field matches the + * `start` parameter sent with the request. If the amount of serial console + * output exceeds the size of the buffer (1 MB), the oldest output is + * discarded and is no longer available. If the requested start position + * refers to discarded output, the start position is adjusted to the oldest + * output still available, and the adjusted start position is returned as the + * `start` property value. + * + * You can also provide a negative start position, which translates to the + * most recent number of bytes written to the serial port. For example, -3 is + * interpreted as the most recent 3 bytes written to the serial console. Note + * that the negative start is bounded by the retained buffer size, and the + * returned serial console output will not exceed the max buffer size. + */ + start?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getshieldedinstanceidentity extends StandardParameters { + /** + * Name or id of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Specifies instance template to create the instance. + * + * This field is optional. It can be a full or partial URL. For example, the + * following are all valid URLs to an instance template: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate + * - projects/project/global/instanceTemplates/instanceTemplate + * - global/instanceTemplates/instanceTemplate + */ + sourceInstanceTemplate?: string; + /** + * Specifies the machine image to use to create the instance. + * + * This field is optional. It can be a full or partial URL. For example, the + * following are all valid URLs to a machine image: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/global/global/machineImages/machineImage + * - projects/project/global/global/machineImages/machineImage + * - global/machineImages/machineImage + */ + sourceMachineImage?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Instances$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Listreferrers extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Name of the target instance scoping this request, or '-' if the + * request should span over all instances in the container. + */ + instance?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Performmaintenance extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Removeresourcepolicies extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesRemoveResourcePoliciesRequest; + } + export interface Params$Resource$Instances$Reporthostasfaulty extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesReportHostAsFaultyRequest; + } + export interface Params$Resource$Instances$Reset extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Mode of reset operation. Defaults to HARD_RESET if not provided. + */ + resetMode?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Resume extends StandardParameters { + /** + * Name of the instance resource to resume. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Senddiagnosticinterrupt extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Setdeletionprotection extends StandardParameters { + /** + * Whether the resource should be protected against deletion. + */ + deletionProtection?: boolean; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Setdiskautodelete extends StandardParameters { + /** + * Whether to auto-delete the disk when the instance is deleted. + */ + autoDelete?: boolean; + /** + * The device name of the disk to modify. Make a get() request + * on the instance to view currently attached disks and device names. + */ + deviceName?: string; + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ZoneSetPolicyRequest; + } + export interface Params$Resource$Instances$Setlabels extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetLabelsRequest; + } + export interface Params$Resource$Instances$Setmachineresources extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetMachineResourcesRequest; + } + export interface Params$Resource$Instances$Setmachinetype extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetMachineTypeRequest; + } + export interface Params$Resource$Instances$Setmetadata extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Metadata; + } + export interface Params$Resource$Instances$Setmincpuplatform extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetMinCpuPlatformRequest; + } + export interface Params$Resource$Instances$Setname extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetNameRequest; + } + export interface Params$Resource$Instances$Setscheduling extends StandardParameters { + /** + * Instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Scheduling; + } + export interface Params$Resource$Instances$Setsecuritypolicy extends StandardParameters { + /** + * Name of the Instance resource to which the security policy should be + * set. The name should conform to RFC1035. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name of the zone scoping this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetSecurityPolicyRequest; + } + export interface Params$Resource$Instances$Setserviceaccount extends StandardParameters { + /** + * Name of the instance resource to start. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetServiceAccountRequest; + } + export interface Params$Resource$Instances$Setshieldedinstanceintegritypolicy extends StandardParameters { + /** + * Name or id of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ShieldedInstanceIntegrityPolicy; + } + export interface Params$Resource$Instances$Settags extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Tags; + } + export interface Params$Resource$Instances$Simulatemaintenanceevent extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Determines whether the customers receive notifications before migration. + * Only applicable to SF vms. + */ + withExtendedNotifications?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Start extends StandardParameters { + /** + * Name of the instance resource to start. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Startwithencryptionkey extends StandardParameters { + /** + * Name of the instance resource to start. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesStartWithEncryptionKeyRequest; + } + export interface Params$Resource$Instances$Stop extends StandardParameters { + /** + * This property is required if the instance has any attached Local SSD disks. + * If false, Local SSD data will be preserved when the instance is suspended. + * If true, the contents of any attached Local SSD disks will be discarded. + */ + discardLocalSsd?: boolean; + /** + * Name of the instance resource to stop. + */ + instance?: string; + /** + * If set to true, Graceful Shutdown is skipped. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Suspend extends StandardParameters { + /** + * This property is required if the instance has any attached Local SSD disks. + * If false, Local SSD data will be preserved when the instance is suspended. + * If true, the contents of any attached Local SSD disks will be discarded. + */ + discardLocalSsd?: boolean; + /** + * Name of the instance resource to suspend. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Instances$Update extends StandardParameters { + /** + * Whether to discard local SSDs from the instance during restart + * default value is false. + */ + discardLocalSsd?: boolean; + /** + * Name of the instance resource to update. + */ + instance?: string; + /** + * Specifies the action to take when updating an instance even if the + * updated properties do not require it. If not specified, then + * Compute Engine acts based on the minimum action that the updated + * properties require. + */ + minimalAction?: string; + /** + * Specifies the most disruptive action that can be taken on the instance + * as part of the update. Compute Engine returns an error if the + * instance properties require a more disruptive action as part of the + * instance update. Valid options from lowest to highest are + * NO_EFFECT, REFRESH, and RESTART. + */ + mostDisruptiveAllowedAction?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Instances$Updateaccessconfig extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * The name of the network interface where the access config is attached. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AccessConfig; + } + export interface Params$Resource$Instances$Updatedisplaydevice extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DisplayDevice; + } + export interface Params$Resource$Instances$Updatenetworkinterface extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * The name of the network interface to update. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - startWithEncryptionKey( - params: Params$Resource$Instances$Startwithencryptionkey, - options: StreamMethodOptions - ): Promise>; - startWithEncryptionKey( - params?: Params$Resource$Instances$Startwithencryptionkey, - options?: MethodOptions - ): Promise>; - startWithEncryptionKey( - params: Params$Resource$Instances$Startwithencryptionkey, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - startWithEncryptionKey( - params: Params$Resource$Instances$Startwithencryptionkey, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - startWithEncryptionKey( - params: Params$Resource$Instances$Startwithencryptionkey, - callback: BodyResponseCallback - ): void; - startWithEncryptionKey( - callback: BodyResponseCallback - ): void; - startWithEncryptionKey( - paramsOrCallback?: - | Params$Resource$Instances$Startwithencryptionkey - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Startwithencryptionkey; - let options = (optionsOrCallback || {}) as MethodOptions; + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Startwithencryptionkey; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$NetworkInterface; + } + export interface Params$Resource$Instances$Updateshieldedinstanceconfig extends StandardParameters { + /** + * Name or id of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$ShieldedInstanceConfig; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Instancesettings { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Stops a running instance, shutting it down cleanly, and allows - * you to restart the instance at a later time. Stopped instances do not incur - * VM usage charges while they are stopped. However, resources that the VM is - * using, such as persistent disks and static IP addresses, will continue to - * be charged until they are deleted. For more information, seeStopping - * an instance. + * Get Instance settings. * @example * ```js * // Before running the sample: @@ -109859,6 +118721,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -109867,67 +118730,20 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.stop({ - * // This property is required if the instance has any attached Local SSD disks. - * // If false, Local SSD data will be preserved when the instance is suspended. - * // If true, the contents of any attached Local SSD disks will be discarded. - * discardLocalSsd: 'placeholder-value', - * // Name of the instance resource to stop. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // If set to true, Graceful Shutdown is skipped. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.instanceSettings.get({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. + * // Name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "fingerprint": "my_fingerprint", * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "metadata": {}, * // "zone": "my_zone" * // } * } @@ -109944,51 +118760,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stop( - params: Params$Resource$Instances$Stop, + get( + params: Params$Resource$Instancesettings$Get, options: StreamMethodOptions ): Promise>; - stop( - params?: Params$Resource$Instances$Stop, + get( + params?: Params$Resource$Instancesettings$Get, options?: MethodOptions - ): Promise>; - stop( - params: Params$Resource$Instances$Stop, + ): Promise>; + get( + params: Params$Resource$Instancesettings$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stop( - params: Params$Resource$Instances$Stop, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancesettings$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - stop( - params: Params$Resource$Instances$Stop, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancesettings$Get, + callback: BodyResponseCallback ): void; - stop(callback: BodyResponseCallback): void; - stop( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instances$Stop - | BodyResponseCallback + | Params$Resource$Instancesettings$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Stop; + let params = (paramsOrCallback || + {}) as Params$Resource$Instancesettings$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Stop; + params = {} as Params$Resource$Instancesettings$Get; options = {}; } @@ -110003,37 +118821,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/stop' + '/compute/v1/projects/{project}/zones/{zone}/instanceSettings' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * This method suspends a running instance, saving its state to persistent - * storage, and allows you to resume the instance at a later time. Suspended - * instances have no compute costs (cores or RAM), and incur only storage - * charges for the saved VM memory and localSSD data. Any charged resources - * the virtual machine was using, such as persistent disks and static IP - * addresses, will continue to be charged while the instance is suspended. - * For more information, see - * Suspending and resuming an instance. + * Patch Instance settings * @example * ```js * // Before running the sample: @@ -110065,13 +118876,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.suspend({ - * // This property is required if the instance has any attached Local SSD disks. - * // If false, Local SSD data will be preserved when the instance is suspended. - * // If true, the contents of any attached Local SSD disks will be discarded. - * discardLocalSsd: 'placeholder-value', - * // Name of the instance resource to suspend. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceSettings.patch({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -110089,8 +118894,21 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * // The zone scoping this request. It should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "kind": "my_kind", + * // "metadata": {}, + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * @@ -110099,6 +118917,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -110140,32 +118959,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - suspend( - params: Params$Resource$Instances$Suspend, + patch( + params: Params$Resource$Instancesettings$Patch, options: StreamMethodOptions ): Promise>; - suspend( - params?: Params$Resource$Instances$Suspend, + patch( + params?: Params$Resource$Instancesettings$Patch, options?: MethodOptions ): Promise>; - suspend( - params: Params$Resource$Instances$Suspend, + patch( + params: Params$Resource$Instancesettings$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspend( - params: Params$Resource$Instances$Suspend, + patch( + params: Params$Resource$Instancesettings$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspend( - params: Params$Resource$Instances$Suspend, + patch( + params: Params$Resource$Instancesettings$Patch, callback: BodyResponseCallback ): void; - suspend(callback: BodyResponseCallback): void; - suspend( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instances$Suspend + | Params$Resource$Instancesettings$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -110180,12 +118999,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Suspend; + {}) as Params$Resource$Instancesettings$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Suspend; + params = {} as Params$Resource$Instancesettings$Patch; options = {}; } @@ -110200,16 +119019,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/suspend' + '/compute/v1/projects/{project}/zones/{zone}/instanceSettings' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -110221,167 +119040,66 @@ export namespace compute_preview { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Instancesettings$Get extends StandardParameters { /** - * Returns permissions that a caller has on the specified resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instances.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instancesettings$Patch extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * ``` + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - testIamPermissions( - params: Params$Resource$Instances$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Instances$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Instances$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Instances$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Instances$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Instances$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Testiampermissions; - options = {}; - } + requestId?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; + /** + * The zone scoping this request. It should conform to RFC1035. + */ + zone?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$InstanceSettings; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Instancetemplates { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Initiates diagnostic troubleshooting on the specified instance. - * This operation cannot be cancelled. + * Retrieves the list of all InstanceTemplates resources, regional and global, + * available to the specified project. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -110405,6 +119123,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -110413,70 +119132,113 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.troubleshoot({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Input only. Timestamp representing the end of the troubleshooting window - * // in RFC3339 - * // text format. If omitted, defaults to 'now'. - * 'params.endTime': 'placeholder-value', - * // Input only. Timestamp representing the beginning of the troubleshooting window - * // in RFC3339 - * // text format. If omitted, defaults to the last 12 hours. - * 'params.startTime': 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.instanceTemplates.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -110492,52 +119254,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - troubleshoot( - params: Params$Resource$Instances$Troubleshoot, + aggregatedList( + params: Params$Resource$Instancetemplates$Aggregatedlist, options: StreamMethodOptions ): Promise>; - troubleshoot( - params?: Params$Resource$Instances$Troubleshoot, + aggregatedList( + params?: Params$Resource$Instancetemplates$Aggregatedlist, options?: MethodOptions - ): Promise>; - troubleshoot( - params: Params$Resource$Instances$Troubleshoot, + ): Promise>; + aggregatedList( + params: Params$Resource$Instancetemplates$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - troubleshoot( - params: Params$Resource$Instances$Troubleshoot, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instancetemplates$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - troubleshoot( - params: Params$Resource$Instances$Troubleshoot, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instancetemplates$Aggregatedlist, + callback: BodyResponseCallback ): void; - troubleshoot(callback: BodyResponseCallback): void; - troubleshoot( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Instances$Troubleshoot - | BodyResponseCallback + | Params$Resource$Instancetemplates$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Troubleshoot; + {}) as Params$Resource$Instancetemplates$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Troubleshoot; + params = {} as Params$Resource$Instancetemplates$Aggregatedlist; options = {}; } @@ -110552,33 +119319,34 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/troubleshoot' + '/compute/v1/projects/{project}/aggregated/instanceTemplates' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Updates an instance only if the necessary resources are available. This - * method can update only a specific set of instance properties. See - * Updating a running instance for a list of updatable instance - * properties. + * Deletes the specified instance template. Deleting an instance template is + * permanent and cannot be undone. It is not possible to delete templates + * that are already in use by a managed instance group. * @example * ```js * // Before running the sample: @@ -110610,23 +119378,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.update({ - * // Whether to discard local SSDs from the instance during restart - * // default value is false. - * discardLocalSsd: 'placeholder-value', - * // Name of the instance resource to update. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Specifies the action to take when updating an instance even if the - * // updated properties do not require it. If not specified, then - * // Compute Engine acts based on the minimum action that the updated - * // properties require. - * minimalAction: 'placeholder-value', - * // Specifies the most disruptive action that can be taken on the instance - * // as part of the update. Compute Engine returns an error if the - * // instance properties require a more disruptive action as part of the - * // instance update. Valid options from lowest to highest are - * // NO_EFFECT, REFRESH, and RESTART. - * mostDisruptiveAllowedAction: 'placeholder-value', + * const res = await compute.instanceTemplates.delete({ + * // The name of the instance template to delete. + * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -110644,63 +119398,6 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advancedMachineFeatures": {}, - * // "canIpForward": false, - * // "confidentialInstanceConfig": {}, - * // "cpuPlatform": "my_cpuPlatform", - * // "creationTimestamp": "my_creationTimestamp", - * // "deletionProtection": false, - * // "description": "my_description", - * // "disks": [], - * // "displayDevice": {}, - * // "fingerprint": "my_fingerprint", - * // "guestAccelerators": [], - * // "hostname": "my_hostname", - * // "id": "my_id", - * // "instanceEncryptionKey": {}, - * // "keyRevocationActionType": "my_keyRevocationActionType", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastStartTimestamp": "my_lastStartTimestamp", - * // "lastStopTimestamp": "my_lastStopTimestamp", - * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", - * // "localSsdEncryptionMode": "my_localSsdEncryptionMode", - * // "machineType": "my_machineType", - * // "metadata": {}, - * // "minCpuPlatform": "my_minCpuPlatform", - * // "name": "my_name", - * // "networkInterfaces": [], - * // "networkPerformanceConfig": {}, - * // "params": {}, - * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", - * // "reservationAffinity": {}, - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "scheduling": {}, - * // "selfLink": "my_selfLink", - * // "serviceAccounts": [], - * // "shieldedInstanceConfig": {}, - * // "shieldedInstanceIntegrityPolicy": {}, - * // "sourceMachineImage": "my_sourceMachineImage", - * // "sourceMachineImageEncryptionKey": {}, - * // "startRestricted": false, - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "tags": {}, - * // "workloadIdentityConfig": {}, - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -110709,6 +119406,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -110750,32 +119448,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Instances$Update, + delete( + params: Params$Resource$Instancetemplates$Delete, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Instances$Update, + delete( + params?: Params$Resource$Instancetemplates$Delete, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Instances$Update, + delete( + params: Params$Resource$Instancetemplates$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Instances$Update, + delete( + params: Params$Resource$Instancetemplates$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Instances$Update, + delete( + params: Params$Resource$Instancetemplates$Delete, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instances$Update + | Params$Resource$Instancetemplates$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -110789,12 +119487,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Update; + let params = (paramsOrCallback || + {}) as Params$Resource$Instancetemplates$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Update; + params = {} as Params$Resource$Instancetemplates$Delete; options = {}; } @@ -110809,16 +119508,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}' + '/compute/v1/projects/{project}/global/instanceTemplates/{instanceTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'instanceTemplate'], + pathParams: ['instanceTemplate', 'project'], context: this.context, }; if (callback) { @@ -110832,10 +119531,7 @@ export namespace compute_preview { } /** - * Updates the specified access config from an instance's network interface - * with the data included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Returns the specified instance template. * @example * ```js * // Before running the sample: @@ -110859,6 +119555,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -110867,82 +119564,27 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateAccessConfig({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the network interface where the access config is attached. - * networkInterface: 'placeholder-value', + * const res = await compute.instanceTemplates.get({ + * // The name of the instance template. + * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "externalIpv6": "my_externalIpv6", - * // "externalIpv6PrefixLength": 0, - * // "ipCollection": "my_ipCollection", - * // "kind": "my_kind", - * // "name": "my_name", - * // "natIP": "my_natIP", - * // "networkTier": "my_networkTier", - * // "publicPtrDomainName": "my_publicPtrDomainName", - * // "securityPolicy": "my_securityPolicy", - * // "setPublicPtr": false, - * // "type": "my_type" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "properties": {}, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceParams": {} * // } * } * @@ -110958,52 +119600,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateAccessConfig( - params: Params$Resource$Instances$Updateaccessconfig, + get( + params: Params$Resource$Instancetemplates$Get, options: StreamMethodOptions ): Promise>; - updateAccessConfig( - params?: Params$Resource$Instances$Updateaccessconfig, + get( + params?: Params$Resource$Instancetemplates$Get, options?: MethodOptions - ): Promise>; - updateAccessConfig( - params: Params$Resource$Instances$Updateaccessconfig, + ): Promise>; + get( + params: Params$Resource$Instancetemplates$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateAccessConfig( - params: Params$Resource$Instances$Updateaccessconfig, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancetemplates$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updateAccessConfig( - params: Params$Resource$Instances$Updateaccessconfig, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancetemplates$Get, + callback: BodyResponseCallback ): void; - updateAccessConfig(callback: BodyResponseCallback): void; - updateAccessConfig( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instances$Updateaccessconfig - | BodyResponseCallback + | Params$Resource$Instancetemplates$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updateaccessconfig; + {}) as Params$Resource$Instancetemplates$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updateaccessconfig; + params = {} as Params$Resource$Instancetemplates$Get; options = {}; } @@ -111018,33 +119661,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig' + '/compute/v1/projects/{project}/global/instanceTemplates/{instanceTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), - params, - requiredParams: ['project', 'zone', 'instance', 'networkInterface'], - pathParams: ['instance', 'project', 'zone'], + params, + requiredParams: ['project', 'instanceTemplate'], + pathParams: ['instanceTemplate', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the Display config for a VM instance. You can - * only use this method on a stopped VM instance. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -111068,6 +119709,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111076,70 +119718,23 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateDisplayDevice({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.instanceTemplates.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "enableDisplay": false - * // } - * }, + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -111155,52 +119750,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateDisplayDevice( - params: Params$Resource$Instances$Updatedisplaydevice, + getIamPolicy( + params: Params$Resource$Instancetemplates$Getiampolicy, options: StreamMethodOptions ): Promise>; - updateDisplayDevice( - params?: Params$Resource$Instances$Updatedisplaydevice, + getIamPolicy( + params?: Params$Resource$Instancetemplates$Getiampolicy, options?: MethodOptions - ): Promise>; - updateDisplayDevice( - params: Params$Resource$Instances$Updatedisplaydevice, + ): Promise>; + getIamPolicy( + params: Params$Resource$Instancetemplates$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateDisplayDevice( - params: Params$Resource$Instances$Updatedisplaydevice, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Instancetemplates$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updateDisplayDevice( - params: Params$Resource$Instances$Updatedisplaydevice, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Instancetemplates$Getiampolicy, + callback: BodyResponseCallback ): void; - updateDisplayDevice(callback: BodyResponseCallback): void; - updateDisplayDevice( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Instances$Updatedisplaydevice - | BodyResponseCallback + | Params$Resource$Instancetemplates$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updatedisplaydevice; + {}) as Params$Resource$Instancetemplates$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updatedisplaydevice; + params = {} as Params$Resource$Instancetemplates$Getiampolicy; options = {}; } @@ -111215,35 +119810,34 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice' + '/compute/v1/projects/{project}/global/instanceTemplates/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an instance's network interface. This method can only update an - * interface's alias IP range and attached network. See Modifying - * alias IP ranges for an existing instance for instructions on - * changing alias IP ranges. See Migrating - * a VM between networks for instructions on migrating an interface. - * This method follows PATCH semantics. + * Creates an instance template in the specified project using the + * data that is included in the request. If you are creating a new template to + * update an existing instance group, your new instance template must use the + * same network or, if applicable, the same subnetwork as the original + * template. * @example * ```js * // Before running the sample: @@ -111275,11 +119869,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateNetworkInterface({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the network interface to update. - * networkInterface: 'placeholder-value', + * const res = await compute.instanceTemplates.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -111297,35 +119887,21 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "accessConfigs": [], - * // "aliasIpRanges": [], - * // "aliasIpv6Ranges": [], - * // "enableVpcScopedDns": false, - * // "fingerprint": "my_fingerprint", - * // "igmpQuery": "my_igmpQuery", - * // "internalIpv6PrefixLength": 0, - * // "ipv6AccessConfigs": [], - * // "ipv6AccessType": "my_ipv6AccessType", - * // "ipv6Address": "my_ipv6Address", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", - * // "networkIP": "my_networkIP", - * // "nicType": "my_nicType", - * // "parentNicName": "my_parentNicName", - * // "queueCount": 0, - * // "serviceClassId": "my_serviceClassId", - * // "stackType": "my_stackType", - * // "subnetwork": "my_subnetwork", - * // "vlan": 0 + * // "properties": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceParams": {} * // } * }, * }); @@ -111336,6 +119912,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -111377,34 +119954,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateNetworkInterface( - params: Params$Resource$Instances$Updatenetworkinterface, + insert( + params: Params$Resource$Instancetemplates$Insert, options: StreamMethodOptions ): Promise>; - updateNetworkInterface( - params?: Params$Resource$Instances$Updatenetworkinterface, + insert( + params?: Params$Resource$Instancetemplates$Insert, options?: MethodOptions ): Promise>; - updateNetworkInterface( - params: Params$Resource$Instances$Updatenetworkinterface, + insert( + params: Params$Resource$Instancetemplates$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateNetworkInterface( - params: Params$Resource$Instances$Updatenetworkinterface, + insert( + params: Params$Resource$Instancetemplates$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateNetworkInterface( - params: Params$Resource$Instances$Updatenetworkinterface, - callback: BodyResponseCallback - ): void; - updateNetworkInterface( + insert( + params: Params$Resource$Instancetemplates$Insert, callback: BodyResponseCallback ): void; - updateNetworkInterface( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instances$Updatenetworkinterface + | Params$Resource$Instancetemplates$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -111419,12 +119994,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updatenetworkinterface; + {}) as Params$Resource$Instancetemplates$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updatenetworkinterface; + params = {} as Params$Resource$Instancetemplates$Insert; options = {}; } @@ -111439,16 +120014,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface' + '/compute/v1/projects/{project}/global/instanceTemplates' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterface'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -111462,10 +120037,8 @@ export namespace compute_preview { } /** - * Updates the Shielded Instance config for an instance. You can - * only use this method on a stopped instance. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Retrieves a list of instance templates that are contained within + * the specified project. * @example * ```js * // Before running the sample: @@ -111489,6 +120062,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111497,72 +120071,102 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateShieldedInstanceConfig({ - * // Name or id of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceTemplates.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "enableIntegrityMonitoring": false, - * // "enableSecureBoot": false, - * // "enableVtpm": false - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -111578,54 +120182,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateShieldedInstanceConfig( - params: Params$Resource$Instances$Updateshieldedinstanceconfig, + list( + params: Params$Resource$Instancetemplates$List, options: StreamMethodOptions ): Promise>; - updateShieldedInstanceConfig( - params?: Params$Resource$Instances$Updateshieldedinstanceconfig, + list( + params?: Params$Resource$Instancetemplates$List, options?: MethodOptions - ): Promise>; - updateShieldedInstanceConfig( - params: Params$Resource$Instances$Updateshieldedinstanceconfig, + ): Promise>; + list( + params: Params$Resource$Instancetemplates$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateShieldedInstanceConfig( - params: Params$Resource$Instances$Updateshieldedinstanceconfig, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - updateShieldedInstanceConfig( - params: Params$Resource$Instances$Updateshieldedinstanceconfig, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancetemplates$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updateShieldedInstanceConfig( - callback: BodyResponseCallback + list( + params: Params$Resource$Instancetemplates$List, + callback: BodyResponseCallback ): void; - updateShieldedInstanceConfig( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instances$Updateshieldedinstanceconfig - | BodyResponseCallback + | Params$Resource$Instancetemplates$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updateshieldedinstanceconfig; + {}) as Params$Resource$Instancetemplates$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updateshieldedinstanceconfig; + params = {} as Params$Resource$Instancetemplates$List; options = {}; } @@ -111638,758 +120242,343 @@ export namespace compute_preview { const parameters = { options: Object.assign( { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Instances$Addaccessconfig extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * The name of the network interface to add to this instance. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AccessConfig; - } - export interface Params$Resource$Instances$Addnetworkinterface extends StandardParameters { - /** - * The instance name for this request stored as resource_id. - * Name should conform to RFC1035 or be an unsigned long integer. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworkInterface; - } - export interface Params$Resource$Instances$Addresourcepolicies extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesAddResourcePoliciesRequest; - } - export interface Params$Resource$Instances$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instances$Attachdisk extends StandardParameters { - /** - * Whether to force attach the regional disk even if it's currently attached - * to another instance. If you try to force attach a zonal disk to an - * instance, you will receive an error. - */ - forceAttach?: boolean; - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AttachedDisk; - } - export interface Params$Resource$Instances$Bulkinsert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BulkInsertInstanceResource; - } - export interface Params$Resource$Instances$Delete extends StandardParameters { - /** - * Name of the instance resource to delete. - */ - instance?: string; - /** - * If set to true, Graceful Shutdown is skipped. - */ - noGracefulShutdown?: boolean; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Deleteaccessconfig extends StandardParameters { - /** - * The name of the access config to delete. - */ - accessConfig?: string; - /** - * The instance name for this request. - */ - instance?: string; - /** - * The name of the network interface. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Deletenetworkinterface extends StandardParameters { - /** - * The instance name for this request stored as resource_id. - * Name should conform to RFC1035 or be an unsigned long integer. - */ - instance?: string; - /** - * The name of the dynamic network interface to be deleted from the instance. - */ - networkInterfaceName?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Detachdisk extends StandardParameters { - /** - * The device name of the disk to detach. Make a get() request on - * the instance to view currently attached disks and device names. - */ - deviceName?: string; - /** - * Instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Get extends StandardParameters { - /** - * Name of the instance resource to return. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Geteffectivefirewalls extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * The name of the network interface to get the effective firewalls. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getguestattributes extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Specifies the guest attributes path to be queried. - */ - queryPath?: string; - /** - * Specifies the key for the guest attributes entry. - */ - variableKey?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getscreenshot extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getserialportoutput extends StandardParameters { - /** - * Name of the instance for this request. - */ - instance?: string; - /** - * Specifies which COM or serial port to retrieve data from. - */ - port?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Specifies the starting byte position of the output to return. To start with - * the first byte of output to the specified port, omit this field or set it - * to `0`. - * - * If the output for that byte position is available, this field matches the - * `start` parameter sent with the request. If the amount of serial console - * output exceeds the size of the buffer (1 MB), the oldest output is - * discarded and is no longer available. If the requested start position - * refers to discarded output, the start position is adjusted to the oldest - * output still available, and the adjusted start position is returned as the - * `start` property value. - * - * You can also provide a negative start position, which translates to the - * most recent number of bytes written to the serial port. For example, -3 is - * interpreted as the most recent 3 bytes written to the serial console. Note - * that the negative start is bounded by the retained buffer size, and the - * returned serial console output will not exceed the max buffer size. - */ - start?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getshieldedinstanceidentity extends StandardParameters { - /** - * Name or id of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/instanceTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * Specifies instance template to create the instance. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); * - * This field is optional. It can be a full or partial URL. For example, the - * following are all valid URLs to an instance template: + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * + * // Do the magic + * const res = await compute.instanceTemplates.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * - * - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate - * - projects/project/global/instanceTemplates/instanceTemplate - * - global/instanceTemplates/instanceTemplate - */ - sourceInstanceTemplate?: string; - /** - * Specifies the machine image to use to create the instance. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); * - * This field is optional. It can be a full or partial URL. For example, the - * following are all valid URLs to a machine image: + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } * + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * - https://www.googleapis.com/compute/v1/projects/project/global/global/machineImages/machineImage - * - projects/project/global/global/machineImages/machineImage - * - global/machineImages/machineImage - */ - sourceMachineImage?: string; - /** - * The name of the zone for this request. + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - zone?: string; + setIamPolicy( + params: Params$Resource$Instancetemplates$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Instancetemplates$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Instancetemplates$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instancetemplates$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instancetemplates$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Instancetemplates$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancetemplates$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancetemplates$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/instanceTemplates/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$Instance; - } - export interface Params$Resource$Instances$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Do the magic + * const res = await compute.instanceTemplates.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Example response + * // { + * // "permissions": [] + * // } + * } * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. + * ``` * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - zone?: string; + testIamPermissions( + params: Params$Resource$Instancetemplates$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Instancetemplates$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Instancetemplates$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instancetemplates$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instancetemplates$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Instancetemplates$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancetemplates$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancetemplates$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/instanceTemplates/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Instances$Listreferrers extends StandardParameters { + + export interface Params$Resource$Instancetemplates$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -112445,680 +120634,65 @@ export namespace compute_preview { * The literal value must match the entire field. * * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Name of the target instance scoping this request, or '-' if the - * request should span over all instances in the container. - */ - instance?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Performmaintenance extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Removeresourcepolicies extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesRemoveResourcePoliciesRequest; - } - export interface Params$Resource$Instances$Reporthostasfaulty extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesReportHostAsFaultyRequest; - } - export interface Params$Resource$Instances$Reset extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Mode of reset operation. Defaults to HARD_RESET if not provided. - */ - resetMode?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Resume extends StandardParameters { - /** - * Name of the instance resource to resume. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Senddiagnosticinterrupt extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Setdeletionprotection extends StandardParameters { - /** - * Whether the resource should be protected against deletion. - */ - deletionProtection?: boolean; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Setdiskautodelete extends StandardParameters { - /** - * Whether to auto-delete the disk when the instance is deleted. - */ - autoDelete?: boolean; - /** - * The device name of the disk to modify. Make a get() request - * on the instance to view currently attached disks and device names. - */ - deviceName?: string; - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ZoneSetPolicyRequest; - } - export interface Params$Resource$Instances$Setlabels extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetLabelsRequest; - } - export interface Params$Resource$Instances$Setmachineresources extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetMachineResourcesRequest; - } - export interface Params$Resource$Instances$Setmachinetype extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetMachineTypeRequest; - } - export interface Params$Resource$Instances$Setmetadata extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Metadata; - } - export interface Params$Resource$Instances$Setmincpuplatform extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetMinCpuPlatformRequest; - } - export interface Params$Resource$Instances$Setname extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetNameRequest; - } - export interface Params$Resource$Instances$Setscheduling extends StandardParameters { - /** - * Instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Scheduling; - } - export interface Params$Resource$Instances$Setsecuritypolicy extends StandardParameters { - /** - * Name of the Instance resource to which the security policy should be - * set. The name should conform to RFC1035. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * you would use `name ne .*instance`. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * Name of the zone scoping this request. - */ - zone?: string; - - /** - * Request body metadata + * You cannot combine constraints on multiple fields using regular + * expressions. */ - requestBody?: Schema$InstancesSetSecurityPolicyRequest; - } - export interface Params$Resource$Instances$Setserviceaccount extends StandardParameters { + filter?: string; /** - * Name of the instance resource to start. + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. */ - instance?: string; + includeAllScopes?: boolean; /** - * Project ID for this request. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - project?: string; + maxResults?: number; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestBody?: Schema$InstancesSetServiceAccountRequest; - } - export interface Params$Resource$Instances$Setshieldedinstanceintegritypolicy extends StandardParameters { + orderBy?: string; /** - * Name or id of the instance scoping this request. + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - instance?: string; + pageToken?: string; /** - * Project ID for this request. + * Name of the project scoping this request. */ project?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. */ - requestBody?: Schema$ShieldedInstanceIntegrityPolicy; + serviceProjectNumber?: string; } - export interface Params$Resource$Instances$Settags extends StandardParameters { + export interface Params$Resource$Instancetemplates$Delete extends StandardParameters { /** - * Name of the instance scoping this request. + * The name of the instance template to delete. */ - instance?: string; + instanceTemplate?: string; /** * Project ID for this request. */ @@ -113139,86 +120713,32 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Tags; } - export interface Params$Resource$Instances$Simulatemaintenanceevent extends StandardParameters { + export interface Params$Resource$Instancetemplates$Get extends StandardParameters { /** - * Name of the instance scoping this request. + * The name of the instance template. */ - instance?: string; + instanceTemplate?: string; /** * Project ID for this request. */ project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Determines whether the customers receive notifications before migration. - * Only applicable to SF vms. - */ - withExtendedNotifications?: boolean; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Instances$Start extends StandardParameters { + export interface Params$Resource$Instancetemplates$Getiampolicy extends StandardParameters { /** - * Name of the instance resource to start. + * Requested IAM Policy version. */ - instance?: string; + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. + * Name or id of the resource for this request. */ - zone?: string; + resource?: string; } - export interface Params$Resource$Instances$Startwithencryptionkey extends StandardParameters { - /** - * Name of the instance resource to start. - */ - instance?: string; + export interface Params$Resource$Instancetemplates$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -113239,93 +120759,108 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstancesStartWithEncryptionKeyRequest; + requestBody?: Schema$InstanceTemplate; } - export interface Params$Resource$Instances$Stop extends StandardParameters { - /** - * This property is required if the instance has any attached Local SSD disks. - * If false, Local SSD data will be preserved when the instance is suspended. - * If true, the contents of any attached Local SSD disks will be discarded. - */ - discardLocalSsd?: boolean; - /** - * Name of the instance resource to stop. - */ - instance?: string; - /** - * If set to true, Graceful Shutdown is skipped. - */ - noGracefulShutdown?: boolean; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Instancetemplates$List extends StandardParameters { /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - requestId?: string; + filter?: string; /** - * The name of the zone for this request. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - zone?: string; - } - export interface Params$Resource$Instances$Suspend extends StandardParameters { + maxResults?: number; /** - * This property is required if the instance has any attached Local SSD disks. - * If false, Local SSD data will be preserved when the instance is suspended. - * If true, the contents of any attached Local SSD disks will be discarded. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - discardLocalSsd?: boolean; + orderBy?: string; /** - * Name of the instance resource to suspend. + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - instance?: string; + pageToken?: string; /** * Project ID for this request. */ project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Instances$Testiampermissions extends StandardParameters { + export interface Params$Resource$Instancetemplates$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -113334,270 +120869,739 @@ export namespace compute_preview { * Name or id of the resource for this request. */ resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$GlobalSetPolicyRequest; } - export interface Params$Resource$Instances$Troubleshoot extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Input only. Timestamp representing the end of the troubleshooting window - * in RFC3339 - * text format. If omitted, defaults to 'now'. - */ - 'params.endTime'?: string; - /** - * Input only. Timestamp representing the beginning of the troubleshooting window - * in RFC3339 - * text format. If omitted, defaults to the last 12 hours. - */ - 'params.startTime'?: string; + export interface Params$Resource$Instancetemplates$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Name or id of the resource for this request. */ - requestId?: string; + resource?: string; + /** - * The name of the zone for this request. + * Request body metadata */ - zone?: string; + requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Instances$Update extends StandardParameters { - /** - * Whether to discard local SSDs from the instance during restart - * default value is false. - */ - discardLocalSsd?: boolean; - /** - * Name of the instance resource to update. - */ - instance?: string; - /** - * Specifies the action to take when updating an instance even if the - * updated properties do not require it. If not specified, then - * Compute Engine acts based on the minimum action that the updated - * properties require. - */ - minimalAction?: string; - /** - * Specifies the most disruptive action that can be taken on the instance - * as part of the update. Compute Engine returns an error if the - * instance properties require a more disruptive action as part of the - * instance update. Valid options from lowest to highest are - * NO_EFFECT, REFRESH, and RESTART. - */ - mostDisruptiveAllowedAction?: string; - /** - * Project ID for this request. - */ - project?: string; + + export class Resource$Instantsnapshotgroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * deletes a Zonal InstantSnapshotGroup resource + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instantSnapshotGroups.delete({ + * // Name of the InstantSnapshot resource to delete. + * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - zone?: string; + delete( + params: Params$Resource$Instantsnapshotgroups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Instantsnapshotgroups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Instantsnapshotgroups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Instantsnapshotgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Instantsnapshotgroups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instantSnapshotGroup'], + pathParams: ['instantSnapshotGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$Instance; - } - export interface Params$Resource$Instances$Updateaccessconfig extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * The name of the network interface where the access config is attached. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * returns the specified InstantSnapshotGroup resource in the specified zone. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instantSnapshotGroups.get({ + * // Name of the InstantSnapshotGroup resource to return. + * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "resourceStatus": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", + * // "status": "my_status", + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - zone?: string; + get( + params: Params$Resource$Instantsnapshotgroups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Instantsnapshotgroups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Instantsnapshotgroups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instantsnapshotgroups$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instantsnapshotgroups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instantSnapshotGroup'], + pathParams: ['instantSnapshotGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$AccessConfig; - } - export interface Params$Resource$Instances$Updatedisplaydevice extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instantSnapshotGroups.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - project?: string; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * inserts a Zonal InstantSnapshotGroup resource + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instantSnapshotGroups.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // begin_interface: MixerMutationRequestBuilder + * sourceConsistencyGroup: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "resourceStatus": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", + * // "status": "my_status", + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$DisplayDevice; - } - export interface Params$Resource$Instances$Updatenetworkinterface extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * The name of the network interface to update. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - zone?: string; + insert( + params: Params$Resource$Instantsnapshotgroups$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Instantsnapshotgroups$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Instantsnapshotgroups$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Instantsnapshotgroups$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Instantsnapshotgroups$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$NetworkInterface; - } - export interface Params$Resource$Instances$Updateshieldedinstanceconfig extends StandardParameters { - /** - * Name or id of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$Insert; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$ShieldedInstanceConfig; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Instancesettings { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Get Instance settings. + * retrieves the list of InstantSnapshotGroup resources contained within + * the specified zone. * @example * ```js * // Before running the sample: @@ -113630,21 +121634,106 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceSettings.get({ + * const res = await compute.instantSnapshotGroups.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the zone for this request. + * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "fingerprint": "my_fingerprint", + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], * // "kind": "my_kind", - * // "metadata": {}, - * // "zone": "my_zone" + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -113660,53 +121749,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Instancesettings$Get, + list( + params: Params$Resource$Instantsnapshotgroups$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instancesettings$Get, + list( + params?: Params$Resource$Instantsnapshotgroups$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Instancesettings$Get, + ): Promise>; + list( + params: Params$Resource$Instantsnapshotgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancesettings$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Instantsnapshotgroups$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancesettings$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Instantsnapshotgroups$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Instancesettings$Get - | BodyResponseCallback + | Params$Resource$Instantsnapshotgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancesettings$Get; + {}) as Params$Resource$Instantsnapshotgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancesettings$Get; + params = {} as Params$Resource$Instantsnapshotgroups$List; options = {}; } @@ -113721,7 +121813,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceSettings' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -113734,17 +121826,18 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patch Instance settings + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -113776,37 +121869,22 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceSettings.patch({ + * const res = await compute.instantSnapshotGroups.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * // The zone scoping this request. It should conform to RFC1035. - * zone: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "fingerprint": "my_fingerprint", - * // "kind": "my_kind", - * // "metadata": {}, - * // "zone": "my_zone" + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -113814,35 +121892,10 @@ export namespace compute_preview { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -113858,52 +121911,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Instancesettings$Patch, + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Instancesettings$Patch, + setIamPolicy( + params?: Params$Resource$Instantsnapshotgroups$Setiampolicy, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Instancesettings$Patch, + ): Promise>; + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancesettings$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancesettings$Patch, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Instancesettings$Patch - | BodyResponseCallback + | Params$Resource$Instantsnapshotgroups$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancesettings$Patch; + {}) as Params$Resource$Instantsnapshotgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancesettings$Patch; + params = {} as Params$Resource$Instantsnapshotgroups$Setiampolicy; options = {}; } @@ -113918,40 +121971,249 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instanceSettings' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instantSnapshotGroups.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); } } } - export interface Params$Resource$Instancesettings$Get extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Delete extends StandardParameters { + /** + * Name of the InstantSnapshot resource to delete. + */ + instantSnapshotGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the zone for this request. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. */ zone?: string; } - export interface Params$Resource$Instancesettings$Patch extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Get extends StandardParameters { + /** + * Name of the InstantSnapshotGroup resource to return. + */ + instantSnapshotGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instantsnapshotgroups$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instantsnapshotgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -113973,29 +122235,165 @@ export namespace compute_preview { */ requestId?: string; /** - * update_mask indicates fields to be updated as part of this request. + * begin_interface: MixerMutationRequestBuilder */ - updateMask?: string; + sourceConsistencyGroup?: string; /** - * The zone scoping this request. It should conform to RFC1035. + * Name of the zone for this request. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceSettings; + requestBody?: Schema$InstantSnapshotGroup; + } + export interface Params$Resource$Instantsnapshotgroups$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } + export interface Params$Resource$Instantsnapshotgroups$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - export class Resource$Instancetemplates { + /** + * Request body metadata + */ + requestBody?: Schema$ZoneSetPolicyRequest; + } + export interface Params$Resource$Instantsnapshotgroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Instantsnapshots { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the list of all InstanceTemplates resources, regional and global, - * available to the specified project. + * Retrieves an aggregated list of instantSnapshots. * * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. @@ -114031,7 +122429,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.aggregatedList({ + * const res = await compute.instantSnapshots.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -114121,7 +122519,7 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Name of the project scoping this request. + * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // The Shared VPC service project id or service project number for which @@ -114137,6 +122535,7 @@ export namespace compute_preview { * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -114154,56 +122553,56 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Instancetemplates$Aggregatedlist, + params: Params$Resource$Instantsnapshots$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Instancetemplates$Aggregatedlist, + params?: Params$Resource$Instantsnapshots$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise>; aggregatedList( - params: Params$Resource$Instancetemplates$Aggregatedlist, + params: Params$Resource$Instantsnapshots$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Instancetemplates$Aggregatedlist, + params: Params$Resource$Instantsnapshots$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Instancetemplates$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Instancetemplates$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Aggregatedlist; + {}) as Params$Resource$Instantsnapshots$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Aggregatedlist; + params = {} as Params$Resource$Instantsnapshots$Aggregatedlist; options = {}; } @@ -114218,7 +122617,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/aggregated/instanceTemplates' + '/compute/v1/projects/{project}/aggregated/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -114231,21 +122630,26 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes the specified instance template. Deleting an instance template is - * permanent and cannot be undone. It is not possible to delete templates - * that are already in use by a managed instance group. + * Deletes the specified InstantSnapshot resource. Keep in mind that deleting + * a single instantSnapshot might not necessarily delete all the data on that + * instantSnapshot. If any data on the instantSnapshot that is marked for + * deletion is needed for subsequent instantSnapshots, the data will be moved + * to the next corresponding instantSnapshot. + * + * For more information, seeDeleting + * instantSnapshots. * @example * ```js * // Before running the sample: @@ -114277,9 +122681,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.delete({ - * // The name of the instance template to delete. - * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshots.delete({ + * // Name of the InstantSnapshot resource to delete. + * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -114297,6 +122701,8 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -114305,6 +122711,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -114347,31 +122754,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instancetemplates$Delete, + params: Params$Resource$Instantsnapshots$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instancetemplates$Delete, + params?: Params$Resource$Instantsnapshots$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instancetemplates$Delete, + params: Params$Resource$Instantsnapshots$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instancetemplates$Delete, + params: Params$Resource$Instantsnapshots$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instancetemplates$Delete, + params: Params$Resource$Instantsnapshots$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instancetemplates$Delete + | Params$Resource$Instantsnapshots$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114386,12 +122793,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Delete; + {}) as Params$Resource$Instantsnapshots$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Delete; + params = {} as Params$Resource$Instantsnapshots$Delete; options = {}; } @@ -114406,7 +122813,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/instanceTemplates/{instanceTemplate}' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -114414,8 +122821,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'instanceTemplate'], - pathParams: ['instanceTemplate', 'project'], + requiredParams: ['project', 'zone', 'instantSnapshot'], + pathParams: ['instantSnapshot', 'project', 'zone'], context: this.context, }; if (callback) { @@ -114429,7 +122836,7 @@ export namespace compute_preview { } /** - * Returns the specified instance template. + * Returns the specified InstantSnapshot resource in the specified zone. * @example * ```js * // Before running the sample: @@ -114462,27 +122869,41 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.get({ - * // The name of the instance template. - * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshots.get({ + * // Name of the InstantSnapshot resource to return. + * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "architecture": "my_architecture", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", * // "id": "my_id", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, * // "name": "my_name", - * // "properties": {}, + * // "params": {}, * // "region": "my_region", + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceParams": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", + * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", + * // "status": "my_status", + * // "zone": "my_zone" * // } * } * @@ -114499,52 +122920,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instancetemplates$Get, + params: Params$Resource$Instantsnapshots$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instancetemplates$Get, + params?: Params$Resource$Instantsnapshots$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Instancetemplates$Get, + params: Params$Resource$Instantsnapshots$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instancetemplates$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instancetemplates$Get, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instancetemplates$Get - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Get; + {}) as Params$Resource$Instantsnapshots$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Get; + params = {} as Params$Resource$Instantsnapshots$Get; options = {}; } @@ -114559,7 +122980,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/instanceTemplates/{instanceTemplate}' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -114567,17 +122988,17 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'instanceTemplate'], - pathParams: ['instanceTemplate', 'project'], + requiredParams: ['project', 'zone', 'instantSnapshot'], + pathParams: ['instantSnapshot', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -114616,14 +123037,16 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.getIamPolicy({ + * const res = await compute.instantSnapshots.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -114649,31 +123072,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Instancetemplates$Getiampolicy, + params: Params$Resource$Instantsnapshots$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Instancetemplates$Getiampolicy, + params?: Params$Resource$Instantsnapshots$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Instancetemplates$Getiampolicy, + params: Params$Resource$Instantsnapshots$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instancetemplates$Getiampolicy, + params: Params$Resource$Instantsnapshots$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instancetemplates$Getiampolicy, + params: Params$Resource$Instantsnapshots$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Instancetemplates$Getiampolicy + | Params$Resource$Instantsnapshots$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114688,12 +123111,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Getiampolicy; + {}) as Params$Resource$Instantsnapshots$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Getiampolicy; + params = {} as Params$Resource$Instantsnapshots$Getiampolicy; options = {}; } @@ -114708,7 +123131,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/instanceTemplates/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -114716,8 +123139,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -114731,11 +123154,7 @@ export namespace compute_preview { } /** - * Creates an instance template in the specified project using the - * data that is included in the request. If you are creating a new template to - * update an existing instance group, your new instance template must use the - * same network or, if applicable, the same subnetwork as the original - * template. + * Creates an instant snapshot in the specified zone. * @example * ```js * // Before running the sample: @@ -114767,7 +123186,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.insert({ + * const res = await compute.instantSnapshots.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -114785,21 +123204,35 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "architecture": "my_architecture", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", * // "id": "my_id", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, * // "name": "my_name", - * // "properties": {}, + * // "params": {}, * // "region": "my_region", + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceParams": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", + * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", + * // "status": "my_status", + * // "zone": "my_zone" * // } * }, * }); @@ -114810,6 +123243,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -114852,31 +123286,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instancetemplates$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instancetemplates$Insert, + params?: Params$Resource$Instantsnapshots$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instancetemplates$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instancetemplates$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instancetemplates$Insert, + params: Params$Resource$Instantsnapshots$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instancetemplates$Insert + | Params$Resource$Instantsnapshots$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114891,12 +123325,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Insert; + {}) as Params$Resource$Instantsnapshots$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Insert; + params = {} as Params$Resource$Instantsnapshots$Insert; options = {}; } @@ -114911,7 +123345,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/instanceTemplates' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -114919,8 +123353,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -114934,8 +123368,8 @@ export namespace compute_preview { } /** - * Retrieves a list of instance templates that are contained within - * the specified project. + * Retrieves the list of InstantSnapshot resources contained within + * the specified zone. * @example * ```js * // Before running the sample: @@ -114968,7 +123402,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.list({ + * const res = await compute.instantSnapshots.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -115053,6 +123487,8 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -115080,53 +123516,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Instancetemplates$List, + params: Params$Resource$Instantsnapshots$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Instancetemplates$List, + params?: Params$Resource$Instantsnapshots$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Instancetemplates$List, + params: Params$Resource$Instantsnapshots$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instancetemplates$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instancetemplates$List, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Instancetemplates$List - | BodyResponseCallback + | Params$Resource$Instantsnapshots$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$List; + {}) as Params$Resource$Instantsnapshots$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$List; + params = {} as Params$Resource$Instantsnapshots$List; options = {}; } @@ -115141,7 +123576,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/instanceTemplates' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -115149,17 +123584,17 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -115197,12 +123632,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.setIamPolicy({ + * const res = await compute.instantSnapshots.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -115238,31 +123675,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Instancetemplates$Setiampolicy, + params: Params$Resource$Instantsnapshots$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Instancetemplates$Setiampolicy, + params?: Params$Resource$Instantsnapshots$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Instancetemplates$Setiampolicy, + params: Params$Resource$Instantsnapshots$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instancetemplates$Setiampolicy, + params: Params$Resource$Instantsnapshots$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instancetemplates$Setiampolicy, + params: Params$Resource$Instantsnapshots$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Instancetemplates$Setiampolicy + | Params$Resource$Instantsnapshots$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115277,12 +123714,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Setiampolicy; + {}) as Params$Resource$Instantsnapshots$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Setiampolicy; + params = {} as Params$Resource$Instantsnapshots$Setiampolicy; options = {}; } @@ -115297,7 +123734,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/instanceTemplates/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -115305,8 +123742,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -115319,6 +123756,204 @@ export namespace compute_preview { } } + /** + * Sets the labels on a instantSnapshot in the given zone. To learn more about + * labels, read the Labeling + * Resources documentation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.instantSnapshots.setLabels({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, + options: StreamMethodOptions + ): Promise>; + setLabels( + params?: Params$Resource$Instantsnapshots$Setlabels, + options?: MethodOptions + ): Promise>; + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, + callback: BodyResponseCallback + ): void; + setLabels(callback: BodyResponseCallback): void; + setLabels( + paramsOrCallback?: + | Params$Resource$Instantsnapshots$Setlabels + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshots$Setlabels; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshots$Setlabels; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Returns permissions that a caller has on the specified resource. * @example @@ -115353,12 +123988,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.testIamPermissions({ + * const res = await compute.instantSnapshots.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -115389,26 +124026,26 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Instancetemplates$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Instancetemplates$Testiampermissions, + params?: Params$Resource$Instantsnapshots$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Instancetemplates$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instancetemplates$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instancetemplates$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -115416,7 +124053,7 @@ export namespace compute_preview { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancetemplates$Testiampermissions + | Params$Resource$Instantsnapshots$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115432,12 +124069,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Testiampermissions; + {}) as Params$Resource$Instantsnapshots$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Testiampermissions; + params = {} as Params$Resource$Instantsnapshots$Testiampermissions; options = {}; } @@ -115452,7 +124089,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/instanceTemplates/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -115460,8 +124097,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -115475,7 +124112,7 @@ export namespace compute_preview { } } - export interface Params$Resource$Instancetemplates$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -115576,7 +124213,7 @@ export namespace compute_preview { */ pageToken?: string; /** - * Name of the project scoping this request. + * Project ID for this request. */ project?: string; /** @@ -115585,11 +124222,11 @@ export namespace compute_preview { */ serviceProjectNumber?: string; } - export interface Params$Resource$Instancetemplates$Delete extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Delete extends StandardParameters { /** - * The name of the instance template to delete. + * Name of the InstantSnapshot resource to delete. */ - instanceTemplate?: string; + instantSnapshot?: string; /** * Project ID for this request. */ @@ -115610,18 +124247,26 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Instancetemplates$Get extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Get extends StandardParameters { /** - * The name of the instance template. + * Name of the InstantSnapshot resource to return. */ - instanceTemplate?: string; + instantSnapshot?: string; /** * Project ID for this request. */ project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Instancetemplates$Getiampolicy extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -115634,8 +124279,12 @@ export namespace compute_preview { * Name or id of the resource for this request. */ resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Instancetemplates$Insert extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -115656,13 +124305,17 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceTemplate; + requestBody?: Schema$InstantSnapshot; } - export interface Params$Resource$Instancetemplates$List extends StandardParameters { + export interface Params$Resource$Instantsnapshots$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -115756,8 +124409,12 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Instancetemplates$Setiampolicy extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -115766,13 +124423,52 @@ export namespace compute_preview { * Name or id of the resource for this request. */ resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$GlobalSetPolicyRequest; + requestBody?: Schema$ZoneSetPolicyRequest; } - export interface Params$Resource$Instancetemplates$Testiampermissions extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ZoneSetLabelsRequest; + } + export interface Params$Resource$Instantsnapshots$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -115781,6 +124477,10 @@ export namespace compute_preview { * Name or id of the resource for this request. */ resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata @@ -115788,14 +124488,14 @@ export namespace compute_preview { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Instantsnapshotgroups { + export class Resource$Interconnectattachmentgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * deletes a Zonal InstantSnapshotGroup resource + * Deletes the specified InterconnectAttachmentGroup in the given scope * @example * ```js * // Before running the sample: @@ -115827,9 +124527,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.delete({ - * // Name of the InstantSnapshot resource to delete. - * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachmentGroups.delete({ + * // Name of the InterconnectAttachmentGroup resource to delete. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -115846,9 +124547,8 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -115857,6 +124557,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -115899,31 +124600,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instantsnapshotgroups$Delete, + params: Params$Resource$Interconnectattachmentgroups$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instantsnapshotgroups$Delete, + params?: Params$Resource$Interconnectattachmentgroups$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instantsnapshotgroups$Delete, + params: Params$Resource$Interconnectattachmentgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshotgroups$Delete, + params: Params$Resource$Interconnectattachmentgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshotgroups$Delete, + params: Params$Resource$Interconnectattachmentgroups$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Delete + | Params$Resource$Interconnectattachmentgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115938,12 +124639,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Delete; + {}) as Params$Resource$Interconnectattachmentgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Delete; + params = {} as Params$Resource$Interconnectattachmentgroups$Delete; options = {}; } @@ -115958,7 +124659,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -115966,8 +124667,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshotGroup'], - pathParams: ['instantSnapshotGroup', 'project', 'zone'], + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], context: this.context, }; if (callback) { @@ -115981,7 +124682,8 @@ export namespace compute_preview { } /** - * returns the specified InstantSnapshotGroup resource in the specified zone. + * Returns the specified InterconnectAttachmentGroup resource in the given + * scope. * @example * ```js * // Before running the sample: @@ -116014,31 +124716,30 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.get({ - * // Name of the InstantSnapshotGroup resource to return. - * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachmentGroups.get({ + * // Name of the InterconnectAttachmentGroup resource to return. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "attachments": {}, + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "etag": "my_etag", * // "id": "my_id", + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", * // "kind": "my_kind", + * // "logicalStructure": {}, * // "name": "my_name", - * // "region": "my_region", - * // "resourceStatus": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", - * // "status": "my_status", - * // "zone": "my_zone" + * // "selfLink": "my_selfLink" * // } * } * @@ -116055,53 +124756,56 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instantsnapshotgroups$Get, + params: Params$Resource$Interconnectattachmentgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instantsnapshotgroups$Get, + params?: Params$Resource$Interconnectattachmentgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Instantsnapshotgroups$Get, + params: Params$Resource$Interconnectattachmentgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshotgroups$Get, + params: Params$Resource$Interconnectattachmentgroups$Get, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshotgroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachmentgroups$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Get - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Get; + {}) as Params$Resource$Interconnectattachmentgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Get; + params = {} as Params$Resource$Interconnectattachmentgroups$Get; options = {}; } @@ -116116,7 +124820,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -116124,17 +124828,17 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshotGroup'], - pathParams: ['instantSnapshotGroup', 'project', 'zone'], + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -116173,16 +124877,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.getIamPolicy({ + * const res = await compute.interconnectAttachmentGroups.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -116208,31 +124910,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params?: Params$Resource$Interconnectattachmentgroups$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Getiampolicy + | Params$Resource$Interconnectattachmentgroups$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -116247,12 +124949,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Getiampolicy; + {}) as Params$Resource$Interconnectattachmentgroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Getiampolicy; + params = + {} as Params$Resource$Interconnectattachmentgroups$Getiampolicy; options = {}; } @@ -116267,7 +124970,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -116275,8 +124978,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -116290,7 +124993,8 @@ export namespace compute_preview { } /** - * inserts a Zonal InstantSnapshotGroup resource + * Returns the InterconnectAttachmentStatuses for the specified + * InterconnectAttachmentGroup resource. * @example * ```js * // Before running the sample: @@ -116314,6 +125018,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -116322,7 +125027,164 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.insert({ + * const res = await compute.interconnectAttachmentGroups.getOperationalStatus({ + * // Name of the interconnectAttachmentGroup resource to query. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "result": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + options: StreamMethodOptions + ): Promise>; + getOperationalStatus( + params?: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + callback: BodyResponseCallback + ): void; + getOperationalStatus( + callback: BodyResponseCallback + ): void; + getOperationalStatus( + paramsOrCallback?: + | Params$Resource$Interconnectattachmentgroups$Getoperationalstatus + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}/getOperationalStatus' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a InterconnectAttachmentGroup in the specified project in the given + * scope using the parameters that are included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.interconnectAttachmentGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -116339,28 +125201,25 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', - * // begin_interface: MixerMutationRequestBuilder - * sourceConsistencyGroup: 'placeholder-value', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "attachments": {}, + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "etag": "my_etag", * // "id": "my_id", + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", * // "kind": "my_kind", + * // "logicalStructure": {}, * // "name": "my_name", - * // "region": "my_region", - * // "resourceStatus": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", - * // "status": "my_status", - * // "zone": "my_zone" + * // "selfLink": "my_selfLink" * // } * }, * }); @@ -116371,6 +125230,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -116413,31 +125273,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instantsnapshotgroups$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instantsnapshotgroups$Insert, + params?: Params$Resource$Interconnectattachmentgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instantsnapshotgroups$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshotgroups$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshotgroups$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Insert + | Params$Resource$Interconnectattachmentgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -116452,12 +125312,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Insert; + {}) as Params$Resource$Interconnectattachmentgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Insert; + params = {} as Params$Resource$Interconnectattachmentgroups$Insert; options = {}; } @@ -116472,7 +125332,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -116480,8 +125340,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -116495,8 +125355,7 @@ export namespace compute_preview { } /** - * retrieves the list of InstantSnapshotGroup resources contained within - * the specified zone. + * Lists the InterconnectAttachmentGroups for a project in the given scope. * @example * ```js * // Before running the sample: @@ -116529,7 +125388,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.list({ + * const res = await compute.interconnectAttachmentGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -116614,8 +125473,6 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -116645,55 +125502,60 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Instantsnapshotgroups$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Instantsnapshotgroups$List, + params?: Params$Resource$Interconnectattachmentgroups$List, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; list( - params: Params$Resource$Instantsnapshotgroups$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instantsnapshotgroups$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instantsnapshotgroups$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachmentgroups$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$List - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$List; + {}) as Params$Resource$Interconnectattachmentgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$List; + params = {} as Params$Resource$Interconnectattachmentgroups$List; options = {}; } @@ -116708,7 +125570,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -116716,17 +125578,230 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); + } + } + + /** + * Patches the specified InterconnectAttachmentGroup resource with the data + * included in the request. This method supports PATCH + * semantics and usesJSON merge + * patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.interconnectAttachmentGroups.patch({ + * // Name of the InterconnectAttachmentGroup resource to patch. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * // end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', + * // The list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attachments": {}, + * // "configured": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "etag": "my_etag", + * // "id": "my_id", + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", + * // "kind": "my_kind", + * // "logicalStructure": {}, + * // "name": "my_name", + * // "selfLink": "my_selfLink" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Interconnectattachmentgroups$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Interconnectattachmentgroups$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Interconnectattachmentgroups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Interconnectattachmentgroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Interconnectattachmentgroups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Interconnectattachmentgroups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectattachmentgroups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnectattachmentgroups$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); } } @@ -116764,14 +125839,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.setIamPolicy({ + * const res = await compute.interconnectAttachmentGroups.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -116807,31 +125880,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params?: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Setiampolicy + | Params$Resource$Interconnectattachmentgroups$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -116846,12 +125919,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Setiampolicy; + {}) as Params$Resource$Interconnectattachmentgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Setiampolicy; + params = + {} as Params$Resource$Interconnectattachmentgroups$Setiampolicy; options = {}; } @@ -116866,7 +125940,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -116874,8 +125948,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -116922,14 +125996,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.testIamPermissions({ + * const res = await compute.interconnectAttachmentGroups.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -116960,26 +126032,26 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params?: Params$Resource$Interconnectattachmentgroups$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -116987,7 +126059,7 @@ export namespace compute_preview { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Testiampermissions + | Params$Resource$Interconnectattachmentgroups$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -117003,12 +126075,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Testiampermissions; + {}) as Params$Resource$Interconnectattachmentgroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Testiampermissions; + params = + {} as Params$Resource$Interconnectattachmentgroups$Testiampermissions; options = {}; } @@ -117023,7 +126096,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -117031,8 +126104,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -117046,11 +126119,11 @@ export namespace compute_preview { } } - export interface Params$Resource$Instantsnapshotgroups$Delete extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Delete extends StandardParameters { /** - * Name of the InstantSnapshot resource to delete. + * Name of the InterconnectAttachmentGroup resource to delete. */ - instantSnapshotGroup?: string; + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ @@ -117069,28 +126142,21 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Instantsnapshotgroups$Get extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Get extends StandardParameters { /** - * Name of the InstantSnapshotGroup resource to return. + * Name of the InterconnectAttachmentGroup resource to return. */ - instantSnapshotGroup?: string; + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Instantsnapshotgroups$Getiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -117103,12 +126169,18 @@ export namespace compute_preview { * Name or id of the resource for this request. */ resource?: string; + } + export interface Params$Resource$Interconnectattachmentgroups$Getoperationalstatus extends StandardParameters { /** - * The name of the zone for this request. + * Name of the interconnectAttachmentGroup resource to query. */ - zone?: string; + interconnectAttachmentGroup?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Instantsnapshotgroups$Insert extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -117127,23 +126199,16 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; - /** - * begin_interface: MixerMutationRequestBuilder - */ - sourceConsistencyGroup?: string; - /** - * Name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstantSnapshotGroup; + requestBody?: Schema$InterconnectAttachmentGroup; } - export interface Params$Resource$Instantsnapshotgroups$List extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -117237,31 +126302,44 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Interconnectattachmentgroups$Patch extends StandardParameters { /** - * The name of the zone for this request. + * Name of the InterconnectAttachmentGroup resource to patch. */ - zone?: string; - } - export interface Params$Resource$Instantsnapshotgroups$Setiampolicy extends StandardParameters { + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + * end_interface: MixerMutationRequestBuilder */ - resource?: string; + requestId?: string; /** - * The name of the zone for this request. + * The list of fields to update. */ - zone?: string; + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$ZoneSetPolicyRequest; + requestBody?: Schema$InterconnectAttachmentGroup; } - export interface Params$Resource$Instantsnapshotgroups$Testiampermissions extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -117270,10 +126348,21 @@ export namespace compute_preview { * Name or id of the resource for this request. */ resource?: string; + /** - * The name of the zone for this request. + * Request body metadata */ - zone?: string; + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Interconnectattachmentgroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; /** * Request body metadata @@ -117281,14 +126370,14 @@ export namespace compute_preview { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Instantsnapshots { + export class Resource$Interconnectattachments { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of instantSnapshots. + * Retrieves an aggregated list of interconnect attachments. * * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. @@ -117324,7 +126413,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.aggregatedList({ + * const res = await compute.interconnectAttachments.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -117448,56 +126537,60 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, + params: Params$Resource$Interconnectattachments$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Instantsnapshots$Aggregatedlist, + params?: Params$Resource$Interconnectattachments$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, + params: Params$Resource$Interconnectattachments$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, + params: Params$Resource$Interconnectattachments$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Aggregatedlist; + {}) as Params$Resource$Interconnectattachments$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Aggregatedlist; + params = {} as Params$Resource$Interconnectattachments$Aggregatedlist; options = {}; } @@ -117512,7 +126605,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/aggregated/instantSnapshots' + '/compute/v1/projects/{project}/aggregated/interconnectAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -117525,26 +126618,19 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes the specified InstantSnapshot resource. Keep in mind that deleting - * a single instantSnapshot might not necessarily delete all the data on that - * instantSnapshot. If any data on the instantSnapshot that is marked for - * deletion is needed for subsequent instantSnapshots, the data will be moved - * to the next corresponding instantSnapshot. - * - * For more information, seeDeleting - * instantSnapshots. + * Deletes the specified interconnect attachment. * @example * ```js * // Before running the sample: @@ -117576,12 +126662,15 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.delete({ - * // Name of the InstantSnapshot resource to delete. - * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachments.delete({ + * // Name of the interconnect attachment to delete. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -117596,8 +126685,6 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -117606,6 +126693,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -117648,31 +126736,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instantsnapshots$Delete, + params?: Params$Resource$Interconnectattachments$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Interconnectattachments$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Delete + | Params$Resource$Interconnectattachments$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -117687,12 +126775,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Delete; + {}) as Params$Resource$Interconnectattachments$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Delete; + params = {} as Params$Resource$Interconnectattachments$Delete; options = {}; } @@ -117707,7 +126795,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -117715,8 +126803,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshot'], - pathParams: ['instantSnapshot', 'project', 'zone'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { @@ -117730,7 +126818,7 @@ export namespace compute_preview { } /** - * Returns the specified InstantSnapshot resource in the specified zone. + * Returns the specified interconnect attachment. * @example * ```js * // Before running the sample: @@ -117763,41 +126851,67 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.get({ - * // Name of the InstantSnapshot resource to return. - * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachments.get({ + * // Name of the interconnect attachment to return. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "architecture": "my_architecture", + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], * // "kind": "my_kind", + * // "l2Forwarding": {}, * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, + * // "mtu": 0, * // "name": "my_name", + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, * // "region": "my_region", - * // "resourceStatus": {}, - * // "satisfiesPzi": false, + * // "remoteService": "my_remoteService", + * // "router": "my_router", * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", - * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", - * // "status": "my_status", - * // "zone": "my_zone" + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 * // } * } * @@ -117814,203 +126928,53 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instantsnapshots$Get, + params: Params$Resource$Interconnectattachments$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instantsnapshots$Get, + params?: Params$Resource$Interconnectattachments$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Instantsnapshots$Get, + params: Params$Resource$Interconnectattachments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshots$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshots$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Get - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instantSnapshot'], - pathParams: ['instantSnapshot', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instantSnapshots.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Instantsnapshots$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Instantsnapshots$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Getiampolicy; + {}) as Params$Resource$Interconnectattachments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Getiampolicy; + params = {} as Params$Resource$Interconnectattachments$Get; options = {}; } @@ -118025,7 +126989,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -118033,22 +126997,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates an instant snapshot in the specified zone. + * Creates an InterconnectAttachment in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -118080,10 +127045,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.insert({ + * const res = await compute.interconnectAttachments.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -118098,35 +127065,60 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // If true, the request will not be committed. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "architecture": "my_architecture", + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], * // "kind": "my_kind", + * // "l2Forwarding": {}, * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, + * // "mtu": 0, * // "name": "my_name", + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, * // "region": "my_region", - * // "resourceStatus": {}, - * // "satisfiesPzi": false, + * // "remoteService": "my_remoteService", + * // "router": "my_router", * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", - * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", - * // "status": "my_status", - * // "zone": "my_zone" + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 * // } * }, * }); @@ -118137,6 +127129,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -118179,31 +127172,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instantsnapshots$Insert, + params?: Params$Resource$Interconnectattachments$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Interconnectattachments$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Insert + | Params$Resource$Interconnectattachments$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -118218,12 +127211,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Insert; + {}) as Params$Resource$Interconnectattachments$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Insert; + params = {} as Params$Resource$Interconnectattachments$Insert; options = {}; } @@ -118238,7 +127231,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -118246,8 +127239,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -118261,8 +127254,8 @@ export namespace compute_preview { } /** - * Retrieves the list of InstantSnapshot resources contained within - * the specified zone. + * Retrieves the list of interconnect attachments contained within + * the specified region. * @example * ```js * // Before running the sample: @@ -118295,7 +127288,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.list({ + * const res = await compute.interconnectAttachments.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -118380,8 +127373,8 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -118409,52 +127402,55 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Instantsnapshots$List, + params: Params$Resource$Interconnectattachments$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Instantsnapshots$List, + params?: Params$Resource$Interconnectattachments$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Instantsnapshots$List, + params: Params$Resource$Interconnectattachments$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instantsnapshots$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instantsnapshots$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Instantsnapshots$List - | BodyResponseCallback + | Params$Resource$Interconnectattachments$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$List; + {}) as Params$Resource$Interconnectattachments$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$List; + params = {} as Params$Resource$Interconnectattachments$List; options = {}; } @@ -118469,7 +127465,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -118477,23 +127473,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Updates the specified interconnect attachment with the data included in the + * request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -118525,22 +127523,81 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.setIamPolicy({ + * const res = await compute.interconnectAttachments.patch({ + * // Name of the interconnect attachment to patch. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, + * // "description": "my_description", + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", + * // "id": "my_id", + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], + * // "kind": "my_kind", + * // "l2Forwarding": {}, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "mtu": 0, + * // "name": "my_name", + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", + * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, + * // "region": "my_region", + * // "remoteService": "my_remoteService", + * // "router": "my_router", + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 * // } * }, * }); @@ -118548,10 +127605,36 @@ export namespace compute_preview { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -118567,52 +127650,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + patch( + params: Params$Resource$Interconnectattachments$Patch, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Instantsnapshots$Setiampolicy, + patch( + params?: Params$Resource$Interconnectattachments$Patch, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + ): Promise>; + patch( + params: Params$Resource$Interconnectattachments$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Interconnectattachments$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, - callback: BodyResponseCallback + patch( + params: Params$Resource$Interconnectattachments$Patch, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Setiampolicy - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Setiampolicy; + {}) as Params$Resource$Interconnectattachments$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Setiampolicy; + params = {} as Params$Resource$Interconnectattachments$Patch; options = {}; } @@ -118627,31 +127710,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on a instantSnapshot in the given zone. To learn more about - * labels, read the Labeling + * Sets the labels on an InterconnectAttachment. To learn more about labels, + * read the Labeling * Resources documentation. * @example * ```js @@ -118684,10 +127767,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.setLabels({ + * const res = await compute.interconnectAttachments.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -118704,8 +127789,6 @@ export namespace compute_preview { * requestId: 'placeholder-value', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -118723,6 +127806,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -118765,31 +127849,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, + params: Params$Resource$Interconnectattachments$Setlabels, options: StreamMethodOptions ): Promise>; setLabels( - params?: Params$Resource$Instantsnapshots$Setlabels, + params?: Params$Resource$Interconnectattachments$Setlabels, options?: MethodOptions ): Promise>; setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, + params: Params$Resource$Interconnectattachments$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, + params: Params$Resource$Interconnectattachments$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, + params: Params$Resource$Interconnectattachments$Setlabels, callback: BodyResponseCallback ): void; setLabels(callback: BodyResponseCallback): void; setLabels( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Setlabels + | Params$Resource$Interconnectattachments$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -118804,12 +127888,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Setlabels; + {}) as Params$Resource$Interconnectattachments$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Setlabels; + params = {} as Params$Resource$Interconnectattachments$Setlabels; options = {}; } @@ -118824,7 +127908,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels' + '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -118832,8 +127916,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -118845,166 +127929,9 @@ export namespace compute_preview { return createAPIRequest(parameters); } } - - /** - * Returns permissions that a caller has on the specified resource. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.instantSnapshots.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "permissions": [] - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Instantsnapshots$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Instantsnapshots$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/instantSnapshots/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } } - export interface Params$Resource$Instantsnapshots$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -119114,15 +128041,19 @@ export namespace compute_preview { */ serviceProjectNumber?: string; } - export interface Params$Resource$Instantsnapshots$Delete extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Delete extends StandardParameters { /** - * Name of the InstantSnapshot resource to delete. + * Name of the interconnect attachment to delete. */ - instantSnapshot?: string; + interconnectAttachment?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -119139,48 +128070,30 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Instantsnapshots$Get extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Get extends StandardParameters { /** - * Name of the InstantSnapshot resource to return. + * Name of the interconnect attachment to return. */ - instantSnapshot?: string; + interconnectAttachment?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the zone for this request. + * Name of the region for this request. */ - zone?: string; + region?: string; } - export interface Params$Resource$Instantsnapshots$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; + export interface Params$Resource$Interconnectattachments$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instantsnapshots$Insert extends StandardParameters { - /** - * Project ID for this request. + * Name of the region for this request. */ - project?: string; + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -119198,16 +128111,16 @@ export namespace compute_preview { */ requestId?: string; /** - * Name of the zone for this request. + * If true, the request will not be committed. */ - zone?: string; + validateOnly?: boolean; /** * Request body metadata */ - requestBody?: Schema$InstantSnapshot; + requestBody?: Schema$InterconnectAttachment; } - export interface Params$Resource$Instantsnapshots$List extends StandardParameters { + export interface Params$Resource$Interconnectattachments$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -119302,34 +128215,54 @@ export namespace compute_preview { */ project?: string; /** - * The name of the zone for this request. + * Name of the region for this request. */ - zone?: string; + region?: string; } - export interface Params$Resource$Instantsnapshots$Setiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Patch extends StandardParameters { + /** + * Name of the interconnect attachment to patch. + */ + interconnectAttachment?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * Name of the region scoping this request. */ - resource?: string; + region?: string; /** - * The name of the zone for this request. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - zone?: string; + requestId?: string; /** * Request body metadata */ - requestBody?: Schema$ZoneSetPolicyRequest; + requestBody?: Schema$InterconnectAttachment; } - export interface Params$Resource$Instantsnapshots$Setlabels extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Setlabels extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * The region for this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -119350,44 +128283,22 @@ export namespace compute_preview { * Name or id of the resource for this request. */ resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$ZoneSetLabelsRequest; - } - export interface Params$Resource$Instantsnapshots$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$RegionSetLabelsRequest; } - export class Resource$Interconnectattachmentgroups { + export class Resource$Interconnectgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified InterconnectAttachmentGroup in the given scope + * Create Interconnects with redundancy by creating them in a specified + * interconnect group. * @example * ```js * // Before running the sample: @@ -119419,10 +128330,188 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.delete({ - * // Name of the InterconnectAttachmentGroup resource to delete. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.createMembers({ + * // Name of the group resource to create members for. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "request": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + createMembers( + params: Params$Resource$Interconnectgroups$Createmembers, + options: StreamMethodOptions + ): Promise>; + createMembers( + params?: Params$Resource$Interconnectgroups$Createmembers, + options?: MethodOptions + ): Promise>; + createMembers( + params: Params$Resource$Interconnectgroups$Createmembers, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createMembers( + params: Params$Resource$Interconnectgroups$Createmembers, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createMembers( + params: Params$Resource$Interconnectgroups$Createmembers, + callback: BodyResponseCallback + ): void; + createMembers(callback: BodyResponseCallback): void; + createMembers( + paramsOrCallback?: + | Params$Resource$Interconnectgroups$Createmembers + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectgroups$Createmembers; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnectgroups$Createmembers; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}/createMembers' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified InterconnectGroup in the given scope + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.interconnectGroups.delete({ + * // Name of the InterconnectGroup resource to delete. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -119449,6 +128538,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -119491,31 +128581,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + params: Params$Resource$Interconnectgroups$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Interconnectattachmentgroups$Delete, + params?: Params$Resource$Interconnectgroups$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + params: Params$Resource$Interconnectgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + params: Params$Resource$Interconnectgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + params: Params$Resource$Interconnectgroups$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Delete + | Params$Resource$Interconnectgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -119530,12 +128620,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Delete; + {}) as Params$Resource$Interconnectgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Delete; + params = {} as Params$Resource$Interconnectgroups$Delete; options = {}; } @@ -119550,7 +128640,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -119558,8 +128648,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { @@ -119573,8 +128663,7 @@ export namespace compute_preview { } /** - * Returns the specified InterconnectAttachmentGroup resource in the given - * scope. + * Returns the specified InterconnectGroup resource in the given scope. * @example * ```js * // Before running the sample: @@ -119607,10 +128696,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.get({ - * // Name of the InterconnectAttachmentGroup resource to return. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.get({ + * // Name of the InterconnectGroup resource to return. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -119619,17 +128707,16 @@ export namespace compute_preview { * * // Example response * // { - * // "attachments": {}, * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", + * // "interconnects": {}, * // "kind": "my_kind", - * // "logicalStructure": {}, * // "name": "my_name", + * // "physicalStructure": {}, * // "selfLink": "my_selfLink" * // } * } @@ -119647,56 +128734,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectattachmentgroups$Get, + params: Params$Resource$Interconnectgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectattachmentgroups$Get, + params?: Params$Resource$Interconnectgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectattachmentgroups$Get, + params: Params$Resource$Interconnectgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectattachmentgroups$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Interconnectattachmentgroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$Get, + callback: BodyResponseCallback ): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Get - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Get; + {}) as Params$Resource$Interconnectgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Get; + params = {} as Params$Resource$Interconnectgroups$Get; options = {}; } @@ -119711,7 +128794,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -119719,17 +128802,17 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -119768,7 +128851,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.getIamPolicy({ + * const res = await compute.interconnectGroups.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. @@ -119801,31 +128884,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params: Params$Resource$Interconnectgroups$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params?: Params$Resource$Interconnectgroups$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params: Params$Resource$Interconnectgroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params: Params$Resource$Interconnectgroups$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params: Params$Resource$Interconnectgroups$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Getiampolicy + | Params$Resource$Interconnectgroups$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -119840,13 +128923,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Getiampolicy; + {}) as Params$Resource$Interconnectgroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Getiampolicy; + params = {} as Params$Resource$Interconnectgroups$Getiampolicy; options = {}; } @@ -119861,7 +128943,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -119884,8 +128966,8 @@ export namespace compute_preview { } /** - * Returns the InterconnectAttachmentStatuses for the specified - * InterconnectAttachmentGroup resource. + * Returns the interconnectStatuses for the specified + * InterconnectGroup. * @example * ```js * // Before running the sample: @@ -119918,10 +129000,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.getOperationalStatus({ - * // Name of the interconnectAttachmentGroup resource to query. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.getOperationalStatus({ + * // Name of the interconnectGroup resource to query. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -119948,61 +129029,60 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + params: Params$Resource$Interconnectgroups$Getoperationalstatus, options: StreamMethodOptions ): Promise>; getOperationalStatus( - params?: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + params?: Params$Resource$Interconnectgroups$Getoperationalstatus, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + params: Params$Resource$Interconnectgroups$Getoperationalstatus, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + params: Params$Resource$Interconnectgroups$Getoperationalstatus, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$Getoperationalstatus, + callback: BodyResponseCallback ): void; getOperationalStatus( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; getOperationalStatus( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Getoperationalstatus - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Getoperationalstatus + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + {}) as Params$Resource$Interconnectgroups$Getoperationalstatus; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + params = {} as Params$Resource$Interconnectgroups$Getoperationalstatus; options = {}; } @@ -120017,33 +129097,33 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}/getOperationalStatus' + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}/getOperationalStatus' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', }, options ), - params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + params, + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Creates a InterconnectAttachmentGroup in the specified project in the given - * scope using the parameters that are included in the request. + * Creates a InterconnectGroup in the specified project in the given scope + * using the parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -120075,7 +129155,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.insert({ + * const res = await compute.interconnectGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -120099,17 +129179,16 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "attachments": {}, * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", + * // "interconnects": {}, * // "kind": "my_kind", - * // "logicalStructure": {}, * // "name": "my_name", + * // "physicalStructure": {}, * // "selfLink": "my_selfLink" * // } * }, @@ -120121,6 +129200,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -120163,31 +129243,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Interconnectgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnectattachmentgroups$Insert, + params?: Params$Resource$Interconnectgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Interconnectgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Interconnectgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Interconnectgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Insert + | Params$Resource$Interconnectgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -120202,12 +129282,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Insert; + {}) as Params$Resource$Interconnectgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Insert; + params = {} as Params$Resource$Interconnectgroups$Insert; options = {}; } @@ -120222,7 +129302,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups' + '/compute/v1/projects/{project}/global/interconnectGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -120245,7 +129325,7 @@ export namespace compute_preview { } /** - * Lists the InterconnectAttachmentGroups for a project in the given scope. + * Lists the InterconnectGroups for a project in the given scope. * @example * ```js * // Before running the sample: @@ -120278,7 +129358,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.list({ + * const res = await compute.interconnectGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -120392,60 +129472,56 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectattachmentgroups$List, + params: Params$Resource$Interconnectgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectattachmentgroups$List, + params?: Params$Resource$Interconnectgroups$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; list( - params: Params$Resource$Interconnectattachmentgroups$List, + params: Params$Resource$Interconnectgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachmentgroups$List, + params: Params$Resource$Interconnectgroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachmentgroups$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$List - | BodyResponseCallback + | Params$Resource$Interconnectgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$List; + {}) as Params$Resource$Interconnectgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$List; + params = {} as Params$Resource$Interconnectgroups$List; options = {}; } @@ -120460,7 +129536,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups' + '/compute/v1/projects/{project}/global/interconnectGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -120473,20 +129549,20 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Patches the specified InterconnectAttachmentGroup resource with the data - * included in the request. This method supports PATCH + * Patches the specified InterconnectGroup resource with the data included in + * the request. This method supports PATCH * semantics and usesJSON merge * patch format and processing rules. * @example @@ -120520,10 +129596,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.patch({ - * // Name of the InterconnectAttachmentGroup resource to patch. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.patch({ + * // Name of the InterconnectGroup resource to patch. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -120549,17 +129624,16 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "attachments": {}, * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", + * // "interconnects": {}, * // "kind": "my_kind", - * // "logicalStructure": {}, * // "name": "my_name", + * // "physicalStructure": {}, * // "selfLink": "my_selfLink" * // } * }, @@ -120571,6 +129645,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -120613,31 +129688,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + params: Params$Resource$Interconnectgroups$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Interconnectattachmentgroups$Patch, + params?: Params$Resource$Interconnectgroups$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + params: Params$Resource$Interconnectgroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + params: Params$Resource$Interconnectgroups$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + params: Params$Resource$Interconnectgroups$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Patch + | Params$Resource$Interconnectgroups$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -120652,12 +129727,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Patch; + {}) as Params$Resource$Interconnectgroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Patch; + params = {} as Params$Resource$Interconnectgroups$Patch; options = {}; } @@ -120672,7 +129747,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '2026-10-01-preview', @@ -120680,8 +129755,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { @@ -120728,7 +129803,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.setIamPolicy({ + * const res = await compute.interconnectGroups.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -120769,31 +129844,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params: Params$Resource$Interconnectgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params?: Params$Resource$Interconnectgroups$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params: Params$Resource$Interconnectgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params: Params$Resource$Interconnectgroups$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params: Params$Resource$Interconnectgroups$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Setiampolicy + | Params$Resource$Interconnectgroups$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -120808,13 +129883,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Setiampolicy; + {}) as Params$Resource$Interconnectgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Setiampolicy; + params = {} as Params$Resource$Interconnectgroups$Setiampolicy; options = {}; } @@ -120829,7 +129903,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -120885,7 +129959,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.testIamPermissions({ + * const res = await compute.interconnectGroups.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -120921,26 +129995,26 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Interconnectgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params?: Params$Resource$Interconnectgroups$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Interconnectgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Interconnectgroups$Testiampermissions, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Interconnectgroups$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -120948,7 +130022,7 @@ export namespace compute_preview { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Testiampermissions + | Params$Resource$Interconnectgroups$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -120964,13 +130038,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Testiampermissions; + {}) as Params$Resource$Interconnectgroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Testiampermissions; + params = {} as Params$Resource$Interconnectgroups$Testiampermissions; options = {}; } @@ -120985,7 +130058,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectAttachmentGroups/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -121008,11 +130081,26 @@ export namespace compute_preview { } } - export interface Params$Resource$Interconnectattachmentgroups$Delete extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Createmembers extends StandardParameters { /** - * Name of the InterconnectAttachmentGroup resource to delete. + * Name of the group resource to create members for. */ - interconnectAttachmentGroup?: string; + interconnectGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InterconnectGroupsCreateMembersRequest; + } + export interface Params$Resource$Interconnectgroups$Delete extends StandardParameters { + /** + * Name of the InterconnectGroup resource to delete. + */ + interconnectGroup?: string; /** * Project ID for this request. */ @@ -121035,17 +130123,17 @@ export namespace compute_preview { */ requestId?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Get extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Get extends StandardParameters { /** - * Name of the InterconnectAttachmentGroup resource to return. + * Name of the InterconnectGroup resource to return. */ - interconnectAttachmentGroup?: string; + interconnectGroup?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Getiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -121059,17 +130147,17 @@ export namespace compute_preview { */ resource?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Getoperationalstatus extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Getoperationalstatus extends StandardParameters { /** - * Name of the interconnectAttachmentGroup resource to query. + * Name of the interconnectGroup resource to query. */ - interconnectAttachmentGroup?: string; + interconnectGroup?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Insert extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -121095,9 +130183,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$InterconnectAttachmentGroup; + requestBody?: Schema$InterconnectGroup; } - export interface Params$Resource$Interconnectattachmentgroups$List extends StandardParameters { + export interface Params$Resource$Interconnectgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -121192,11 +130280,11 @@ export namespace compute_preview { */ project?: string; } - export interface Params$Resource$Interconnectattachmentgroups$Patch extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Patch extends StandardParameters { /** - * Name of the InterconnectAttachmentGroup resource to patch. + * Name of the InterconnectGroup resource to patch. */ - interconnectAttachmentGroup?: string; + interconnectGroup?: string; /** * Project ID for this request. */ @@ -121226,9 +130314,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$InterconnectAttachmentGroup; + requestBody?: Schema$InterconnectGroup; } - export interface Params$Resource$Interconnectattachmentgroups$Setiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -121243,7 +130331,7 @@ export namespace compute_preview { */ requestBody?: Schema$GlobalSetPolicyRequest; } - export interface Params$Resource$Interconnectattachmentgroups$Testiampermissions extends StandardParameters { + export interface Params$Resource$Interconnectgroups$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -121259,17 +130347,15 @@ export namespace compute_preview { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Interconnectattachments { + export class Resource$Interconnectlocations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of interconnect attachments. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Returns the details for the specified interconnect location. Gets a list of + * available interconnect locations by making a list() request. * @example * ```js * // Before running the sample: @@ -121302,504 +130388,37 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, - options: StreamMethodOptions - ): Promise>; - aggregatedList( - params?: Params$Resource$Interconnectattachments$Aggregatedlist, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, - callback: BodyResponseCallback - ): void; - aggregatedList( - callback: BodyResponseCallback - ): void; - aggregatedList( - paramsOrCallback?: - | Params$Resource$Interconnectattachments$Aggregatedlist - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Aggregatedlist; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Aggregatedlist; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/interconnectAttachments' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Deletes the specified interconnect attachment. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnectAttachments.delete({ - * // Name of the interconnect attachment to delete. - * interconnectAttachment: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectLocations.get({ + * // Name of the interconnect location to return. + * interconnectLocation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "address": "my_address", + * // "availabilityZone": "my_availabilityZone", + * // "availableFeatures": [], + * // "availableLinkTypes": [], + * // "city": "my_city", + * // "continent": "my_continent", * // "creationTimestamp": "my_creationTimestamp", + * // "crossSiteInterconnectInfos": [], * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "facilityProvider": "my_facilityProvider", + * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "peeringdbFacilityId": "my_peeringdbFacilityId", + * // "regionInfos": [], * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "singleRegionProductionCriticalPeerLocations": [], * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - delete( - params: Params$Resource$Interconnectattachments$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Interconnectattachments$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Interconnectattachments$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Interconnectattachments$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Interconnectattachments$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Interconnectattachments$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the specified interconnect attachment. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnectAttachments.get({ - * // Name of the interconnect attachment to return. - * interconnectAttachment: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, - * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", - * // "googleReferenceId": "my_googleReferenceId", - * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], - * // "kind": "my_kind", - * // "l2Forwarding": {}, - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "mtu": 0, - * // "name": "my_name", - * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", - * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "stackType": "my_stackType", - * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 + * // "supportsPzs": false * // } * } * @@ -121816,53 +130435,53 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectattachments$Get, + params: Params$Resource$Interconnectlocations$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectattachments$Get, + params?: Params$Resource$Interconnectlocations$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectattachments$Get, + params: Params$Resource$Interconnectlocations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectattachments$Get, + params: Params$Resource$Interconnectlocations$Get, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectattachments$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectlocations$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Get - | BodyResponseCallback + | Params$Resource$Interconnectlocations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Get; + {}) as Params$Resource$Interconnectlocations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Get; + params = {} as Params$Resource$Interconnectlocations$Get; options = {}; } @@ -121877,7 +130496,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' + '/compute/v1/projects/{project}/global/interconnectLocations/{interconnectLocation}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -121885,264 +130504,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates an InterconnectAttachment in the specified project using the data - * included in the request. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnectAttachments.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // If true, the request will not be committed. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, - * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", - * // "googleReferenceId": "my_googleReferenceId", - * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], - * // "kind": "my_kind", - * // "l2Forwarding": {}, - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "mtu": 0, - * // "name": "my_name", - * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", - * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "stackType": "my_stackType", - * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - insert( - params: Params$Resource$Interconnectattachments$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Interconnectattachments$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Interconnectattachments$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Interconnectattachments$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Interconnectattachments$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Interconnectattachments$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'interconnectLocation'], + pathParams: ['interconnectLocation', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of interconnect attachments contained within - * the specified region. + * Retrieves the list of interconnect locations available to the specified + * project. * @example * ```js * // Before running the sample: @@ -122175,7 +130553,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.list({ + * const res = await compute.interconnectLocations.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -122260,8 +130638,6 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -122289,55 +130665,53 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectattachments$List, + params: Params$Resource$Interconnectlocations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectattachments$List, + params?: Params$Resource$Interconnectlocations$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Interconnectattachments$List, + params: Params$Resource$Interconnectlocations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachments$List, + params: Params$Resource$Interconnectlocations$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnectattachments$List, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Interconnectlocations$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Interconnectattachments$List - | BodyResponseCallback + | Params$Resource$Interconnectlocations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$List; + {}) as Params$Resource$Interconnectlocations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$List; + params = {} as Params$Resource$Interconnectlocations$List; options = {}; } @@ -122352,7 +130726,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments' + '/compute/v1/projects/{project}/global/interconnectLocations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -122360,25 +130734,136 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Interconnectlocations$Get extends StandardParameters { /** - * Updates the specified interconnect attachment with the data included in the - * request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Name of the interconnect location to return. + */ + interconnectLocation?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Interconnectlocations$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + } + + export class Resource$Interconnectremotelocations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the details for the specified interconnect remote location. Gets a + * list of available interconnect remote locations by making alist() request. * @example * ```js * // Before running the sample: @@ -122402,6 +130887,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -122410,117 +130896,39 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.patch({ - * // Name of the interconnect attachment to patch. - * interconnectAttachment: + * const res = await compute.interconnectRemoteLocations.get({ + * // Name of the interconnect remote location to return. + * interconnectRemoteLocation: * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, - * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", - * // "googleReferenceId": "my_googleReferenceId", - * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], - * // "kind": "my_kind", - * // "l2Forwarding": {}, - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "mtu": 0, - * // "name": "my_name", - * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", - * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "stackType": "my_stackType", - * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "address": "my_address", + * // "attachmentConfigurationConstraints": {}, + * // "city": "my_city", + * // "constraints": {}, + * // "continent": "my_continent", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "facilityProvider": "my_facilityProvider", + * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", + * // "lacp": "my_lacp", + * // "maxLagSize100Gbps": 0, + * // "maxLagSize10Gbps": 0, + * // "maxLagSize400Gbps": 0, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "peeringdbFacilityId": "my_peeringdbFacilityId", + * // "permittedConnections": [], + * // "remoteService": "my_remoteService", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "status": "my_status" * // } * } * @@ -122536,52 +130944,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Interconnectattachments$Patch, + get( + params: Params$Resource$Interconnectremotelocations$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Interconnectattachments$Patch, + get( + params?: Params$Resource$Interconnectremotelocations$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Interconnectattachments$Patch, + ): Promise>; + get( + params: Params$Resource$Interconnectremotelocations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnectattachments$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Interconnectremotelocations$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnectattachments$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Interconnectremotelocations$Get, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Patch - | BodyResponseCallback + | Params$Resource$Interconnectremotelocations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Patch; + {}) as Params$Resource$Interconnectremotelocations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Patch; + params = {} as Params$Resource$Interconnectremotelocations$Get; options = {}; } @@ -122596,32 +131008,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' + '/compute/v1/projects/{project}/global/interconnectRemoteLocations/{interconnectRemoteLocation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], + requiredParams: ['project', 'interconnectRemoteLocation'], + pathParams: ['interconnectRemoteLocation', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on an InterconnectAttachment. To learn more about labels, - * read the Labeling - * Resources documentation. + * Retrieves the list of interconnect remote locations available to the + * specified project. * @example * ```js * // Before running the sample: @@ -122645,6 +131056,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -122653,71 +131065,102 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.setLabels({ + * const res = await compute.interconnectRemoteLocations.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -122733,52 +131176,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, + list( + params: Params$Resource$Interconnectremotelocations$List, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Interconnectattachments$Setlabels, + list( + params?: Params$Resource$Interconnectremotelocations$List, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, + ): Promise>; + list( + params: Params$Resource$Interconnectremotelocations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnectremotelocations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnectremotelocations$List, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Setlabels - | BodyResponseCallback + | Params$Resource$Interconnectremotelocations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Setlabels; + {}) as Params$Resource$Interconnectremotelocations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Setlabels; + params = {} as Params$Resource$Interconnectremotelocations$List; options = {}; } @@ -122793,219 +131241,42 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setLabels' + '/compute/v1/projects/{project}/global/interconnectRemoteLocations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Interconnectattachments$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Interconnectattachments$Delete extends StandardParameters { - /** - * Name of the interconnect attachment to delete. - */ - interconnectAttachment?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - } - export interface Params$Resource$Interconnectattachments$Get extends StandardParameters { - /** - * Name of the interconnect attachment to return. - */ - interconnectAttachment?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Interconnectremotelocations$Get extends StandardParameters { /** - * Name of the region for this request. + * Name of the interconnect remote location to return. */ - region?: string; - } - export interface Params$Resource$Interconnectattachments$Insert extends StandardParameters { + interconnectRemoteLocation?: string; /** * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * If true, the request will not be committed. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectAttachment; } - export interface Params$Resource$Interconnectattachments$List extends StandardParameters { + export interface Params$Resource$Interconnectremotelocations$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -123099,269 +131370,16 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Interconnectattachments$Patch extends StandardParameters { - /** - * Name of the interconnect attachment to patch. - */ - interconnectAttachment?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectAttachment; - } - export interface Params$Resource$Interconnectattachments$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetLabelsRequest; } - export class Resource$Interconnectgroups { + export class Resource$Interconnects { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Create Interconnects with redundancy by creating them in a specified - * interconnect group. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnectGroups.createMembers({ - * // Name of the group resource to create members for. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "request": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - options: StreamMethodOptions - ): Promise>; - createMembers( - params?: Params$Resource$Interconnectgroups$Createmembers, - options?: MethodOptions - ): Promise>; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - callback: BodyResponseCallback - ): void; - createMembers(callback: BodyResponseCallback): void; - createMembers( - paramsOrCallback?: - | Params$Resource$Interconnectgroups$Createmembers - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Createmembers; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Createmembers; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}/createMembers' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes the specified InterconnectGroup in the given scope + * Deletes the specified Interconnect. * @example * ```js * // Before running the sample: @@ -123393,9 +131411,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.delete({ - * // Name of the InterconnectGroup resource to delete. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnects.delete({ + * // Name of the interconnect to delete. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -123412,7 +131430,6 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', * }); * console.log(res.data); @@ -123422,6 +131439,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -123464,31 +131482,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Interconnectgroups$Delete, + params: Params$Resource$Interconnects$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Interconnectgroups$Delete, + params?: Params$Resource$Interconnects$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Interconnectgroups$Delete, + params: Params$Resource$Interconnects$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectgroups$Delete, + params: Params$Resource$Interconnects$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectgroups$Delete, + params: Params$Resource$Interconnects$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Delete + | Params$Resource$Interconnects$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -123503,12 +131521,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Delete; + {}) as Params$Resource$Interconnects$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Delete; + params = {} as Params$Resource$Interconnects$Delete; options = {}; } @@ -123523,7 +131541,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -123531,8 +131549,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { @@ -123546,7 +131564,8 @@ export namespace compute_preview { } /** - * Returns the specified InterconnectGroup resource in the given scope. + * Returns the specified Interconnect. Get a list of available Interconnects + * by making a list() request. * @example * ```js * // Before running the sample: @@ -123579,9 +131598,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.get({ - * // Name of the InterconnectGroup resource to return. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnects.get({ + * // Name of the interconnect to return. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -123590,17 +131609,44 @@ export namespace compute_preview { * * // Example response * // { - * // "configured": {}, + * // "aaiEnabled": false, + * // "adminEnabled": false, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", + * // "customerName": "my_customerName", * // "description": "my_description", - * // "etag": "my_etag", + * // "effectiveLocation": "my_effectiveLocation", + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" + * // "nocContactEmail": "my_nocContactEmail", + * // "operationalStatus": "my_operationalStatus", + * // "params": {}, + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * } * @@ -123617,52 +131663,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectgroups$Get, + params: Params$Resource$Interconnects$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectgroups$Get, + params?: Params$Resource$Interconnects$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectgroups$Get, + params: Params$Resource$Interconnects$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectgroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Interconnects$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectgroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnects$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Get - | BodyResponseCallback + | Params$Resource$Interconnects$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Get; + {}) as Params$Resource$Interconnects$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Get; + params = {} as Params$Resource$Interconnects$Get; options = {}; } @@ -123677,7 +131723,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -123685,23 +131731,31 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Returns the interconnectDiagnostics for the specified + * Interconnect. + * + * In the event of a + * global outage, do not use this API to make decisions about where to + * redirect your network traffic. + * + * Unlike a VLAN attachment, which is regional, a Cloud Interconnect + * connection is a global resource. A global outage can prevent this + * API from functioning properly. * @example * ```js * // Before running the sample: @@ -123734,23 +131788,18 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.interconnects.getDiagnostics({ + * // Name of the interconnect resource to query. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "result": {} * // } * } * @@ -123766,52 +131815,61 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Interconnectgroups$Getiampolicy, + getDiagnostics( + params?: Params$Resource$Interconnects$Getdiagnostics, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, - callback: BodyResponseCallback + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + getDiagnostics( + callback: BodyResponseCallback + ): void; + getDiagnostics( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Getiampolicy - | BodyResponseCallback + | Params$Resource$Interconnects$Getdiagnostics + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Getiampolicy; + {}) as Params$Resource$Interconnects$Getdiagnostics; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Getiampolicy; + params = {} as Params$Resource$Interconnects$Getdiagnostics; options = {}; } @@ -123826,7 +131884,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}/getDiagnostics' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -123834,23 +131892,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns the interconnectStatuses for the specified - * InterconnectGroup. + * Returns the interconnectMacsecConfig for the specified + * Interconnect. * @example * ```js * // Before running the sample: @@ -123883,9 +131943,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.getOperationalStatus({ - * // Name of the interconnectGroup resource to query. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnects.getMacsecConfig({ + * // Name of the interconnect resource to query. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -123911,61 +131971,61 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, options: StreamMethodOptions ): Promise>; - getOperationalStatus( - params?: Params$Resource$Interconnectgroups$Getoperationalstatus, + getMacsecConfig( + params?: Params$Resource$Interconnects$Getmacsecconfig, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, - callback: BodyResponseCallback + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, + callback: BodyResponseCallback ): void; - getOperationalStatus( - callback: BodyResponseCallback + getMacsecConfig( + callback: BodyResponseCallback ): void; - getOperationalStatus( + getMacsecConfig( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Getoperationalstatus - | BodyResponseCallback + | Params$Resource$Interconnects$Getmacsecconfig + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Getoperationalstatus; + {}) as Params$Resource$Interconnects$Getmacsecconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Getoperationalstatus; + params = {} as Params$Resource$Interconnects$Getmacsecconfig; options = {}; } @@ -123980,7 +132040,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}/getOperationalStatus' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}/getMacsecConfig' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -123988,25 +132048,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Creates a InterconnectGroup in the specified project in the given scope - * using the parameters that are included in the request. + * Creates an Interconnect in the specified project using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -124038,7 +132098,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.insert({ + * const res = await compute.interconnects.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -124055,24 +132115,50 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "configured": {}, + * // "aaiEnabled": false, + * // "adminEnabled": false, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", + * // "customerName": "my_customerName", * // "description": "my_description", - * // "etag": "my_etag", + * // "effectiveLocation": "my_effectiveLocation", + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" + * // "nocContactEmail": "my_nocContactEmail", + * // "operationalStatus": "my_operationalStatus", + * // "params": {}, + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * }, * }); @@ -124083,6 +132169,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -124125,31 +132212,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnectgroups$Insert, + params: Params$Resource$Interconnects$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnectgroups$Insert, + params?: Params$Resource$Interconnects$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnectgroups$Insert, + params: Params$Resource$Interconnects$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectgroups$Insert, + params: Params$Resource$Interconnects$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectgroups$Insert, + params: Params$Resource$Interconnects$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Insert + | Params$Resource$Interconnects$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -124164,12 +132251,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Insert; + {}) as Params$Resource$Interconnects$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Insert; + params = {} as Params$Resource$Interconnects$Insert; options = {}; } @@ -124183,8 +132270,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups' + rootUrl + '/compute/v1/projects/{project}/global/interconnects' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -124207,7 +132293,7 @@ export namespace compute_preview { } /** - * Lists the InterconnectGroups for a project in the given scope. + * Retrieves the list of Interconnects available to the specified project. * @example * ```js * // Before running the sample: @@ -124240,7 +132326,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.list({ + * const res = await compute.interconnects.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -124330,13 +132416,11 @@ export namespace compute_preview { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -124354,56 +132438,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectgroups$List, + params: Params$Resource$Interconnects$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectgroups$List, + params?: Params$Resource$Interconnects$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Interconnectgroups$List, + params: Params$Resource$Interconnects$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnectgroups$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnects$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Interconnects$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Interconnectgroups$List - | BodyResponseCallback + | Params$Resource$Interconnects$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$List; + {}) as Params$Resource$Interconnects$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$List; + params = {} as Params$Resource$Interconnects$List; options = {}; } @@ -124417,8 +132497,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups' + rootUrl + '/compute/v1/projects/{project}/global/interconnects' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -124431,21 +132510,19 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Patches the specified InterconnectGroup resource with the data included in - * the request. This method supports PATCH - * semantics and usesJSON merge + * Updates the specified Interconnect with the data included in the request. + * This method supportsPATCH + * semantics and uses theJSON merge * patch format and processing rules. * @example * ```js @@ -124478,9 +132555,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.patch({ - * // Name of the InterconnectGroup resource to patch. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnects.patch({ + * // Name of the interconnect to update. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -124497,26 +132574,50 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', - * // The list of fields to update. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "configured": {}, + * // "aaiEnabled": false, + * // "adminEnabled": false, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", + * // "customerName": "my_customerName", * // "description": "my_description", - * // "etag": "my_etag", + * // "effectiveLocation": "my_effectiveLocation", + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" + * // "nocContactEmail": "my_nocContactEmail", + * // "operationalStatus": "my_operationalStatus", + * // "params": {}, + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * }, * }); @@ -124527,6 +132628,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -124569,31 +132671,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Interconnectgroups$Patch, + params: Params$Resource$Interconnects$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Interconnectgroups$Patch, + params?: Params$Resource$Interconnects$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Interconnectgroups$Patch, + params: Params$Resource$Interconnects$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectgroups$Patch, + params: Params$Resource$Interconnects$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectgroups$Patch, + params: Params$Resource$Interconnects$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Patch + | Params$Resource$Interconnects$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -124608,12 +132710,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Patch; + {}) as Params$Resource$Interconnects$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Patch; + params = {} as Params$Resource$Interconnects$Patch; options = {}; } @@ -124628,7 +132730,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{interconnectGroup}' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '2026-10-01-preview', @@ -124636,8 +132738,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { @@ -124651,8 +132753,9 @@ export namespace compute_preview { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Sets the labels on an Interconnect. To learn more about labels, + * read the Labeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -124684,7 +132787,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.setIamPolicy({ + * const res = await compute.interconnects.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -124695,9 +132798,8 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} * // } * }, * }); @@ -124705,10 +132807,36 @@ export namespace compute_preview { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -124724,52 +132852,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, + setLabels( + params: Params$Resource$Interconnects$Setlabels, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Interconnectgroups$Setiampolicy, + setLabels( + params?: Params$Resource$Interconnects$Setlabels, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, + ): Promise>; + setLabels( + params: Params$Resource$Interconnects$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Interconnects$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Interconnects$Setlabels, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Setiampolicy - | BodyResponseCallback + | Params$Resource$Interconnects$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Setiampolicy; + {}) as Params$Resource$Interconnects$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Setiampolicy; + params = {} as Params$Resource$Interconnects$Setlabels; options = {}; } @@ -124784,7 +132912,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/interconnects/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -124797,17 +132925,17 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Sets name of an interconnect. * @example * ```js * // Before running the sample: @@ -124831,7 +132959,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -124840,18 +132967,33 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.testIamPermissions({ + * const res = await compute.interconnects.setName({ + * // Name of the interconnect to update. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // An optional request ID to identify requests. Specify a unique request ID + * // so that if you must retry your request, the server will know to ignore + * // the request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "currentName": "my_currentName", + * // "name": "my_name" * // } * }, * }); @@ -124859,7 +133001,36 @@ export namespace compute_preview { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -124875,56 +133046,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, + setName( + params: Params$Resource$Interconnects$Setname, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Interconnectgroups$Testiampermissions, + setName( + params?: Params$Resource$Interconnects$Setname, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, + ): Promise>; + setName( + params: Params$Resource$Interconnects$Setname, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, - callback: BodyResponseCallback + setName( + params: Params$Resource$Interconnects$Setname, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + setName( + params: Params$Resource$Interconnects$Setname, + callback: BodyResponseCallback ): void; - testIamPermissions( + setName(callback: BodyResponseCallback): void; + setName( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Testiampermissions - | BodyResponseCallback + | Params$Resource$Interconnects$Setname + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Testiampermissions; + {}) as Params$Resource$Interconnects$Setname; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Testiampermissions; + params = {} as Params$Resource$Interconnects$Setname; options = {}; } @@ -124939,7 +133106,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectGroups/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/interconnects/{interconnect}/setName' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -124947,41 +133114,26 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Interconnectgroups$Createmembers extends StandardParameters { - /** - * Name of the group resource to create members for. - */ - interconnectGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectGroupsCreateMembersRequest; - } - export interface Params$Resource$Interconnectgroups$Delete extends StandardParameters { + export interface Params$Resource$Interconnects$Delete extends StandardParameters { /** - * Name of the InterconnectGroup resource to delete. + * Name of the interconnect to delete. */ - interconnectGroup?: string; + interconnect?: string; /** * Project ID for this request. */ @@ -125000,45 +133152,40 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; } - export interface Params$Resource$Interconnectgroups$Get extends StandardParameters { + export interface Params$Resource$Interconnects$Get extends StandardParameters { /** - * Name of the InterconnectGroup resource to return. + * Name of the interconnect to return. */ - interconnectGroup?: string; + interconnect?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnectgroups$Getiampolicy extends StandardParameters { + export interface Params$Resource$Interconnects$Getdiagnostics extends StandardParameters { /** - * Requested IAM Policy version. + * Name of the interconnect resource to query. */ - optionsRequestedPolicyVersion?: number; + interconnect?: string; /** * Project ID for this request. */ project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; } - export interface Params$Resource$Interconnectgroups$Getoperationalstatus extends StandardParameters { + export interface Params$Resource$Interconnects$Getmacsecconfig extends StandardParameters { /** - * Name of the interconnectGroup resource to query. + * Name of the interconnect resource to query. */ - interconnectGroup?: string; + interconnect?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnectgroups$Insert extends StandardParameters { + export interface Params$Resource$Interconnects$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -125057,16 +133204,15 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; /** * Request body metadata */ - requestBody?: Schema$InterconnectGroup; + requestBody?: Schema$Interconnect; } - export interface Params$Resource$Interconnectgroups$List extends StandardParameters { + export interface Params$Resource$Interconnects$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -125161,11 +133307,11 @@ export namespace compute_preview { */ project?: string; } - export interface Params$Resource$Interconnectgroups$Patch extends StandardParameters { + export interface Params$Resource$Interconnects$Patch extends StandardParameters { /** - * Name of the InterconnectGroup resource to patch. + * Name of the interconnect to update. */ - interconnectGroup?: string; + interconnect?: string; /** * Project ID for this request. */ @@ -125184,20 +133330,15 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; - /** - * The list of fields to update. - */ - updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$InterconnectGroup; + requestBody?: Schema$Interconnect; } - export interface Params$Resource$Interconnectgroups$Setiampolicy extends StandardParameters { + export interface Params$Resource$Interconnects$Setlabels extends StandardParameters { /** * Project ID for this request. */ @@ -125210,33 +133351,52 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$GlobalSetPolicyRequest; + requestBody?: Schema$GlobalSetLabelsRequest; } - export interface Params$Resource$Interconnectgroups$Testiampermissions extends StandardParameters { + export interface Params$Resource$Interconnects$Setname extends StandardParameters { + /** + * Name of the interconnect to update. + */ + interconnect?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * An optional request ID to identify requests. Specify a unique request ID + * so that if you must retry your request, the server will know to ignore + * the request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - resource?: string; + requestId?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$InterconnectsSetNameRequest; } - export class Resource$Interconnectlocations { + export class Resource$Licensecodes { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Returns the details for the specified interconnect location. Gets a list of - * available interconnect locations by making a list() request. + * Return a specified license code. License codes are mirrored across + * all projects that have permissions to read the License Code. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -125269,9 +133429,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectLocations.get({ - * // Name of the interconnect location to return. - * interconnectLocation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenseCodes.get({ + * // Number corresponding to the License code resource to return. + * licenseCode: '[0-9]{0,61}?', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -125280,26 +133440,25 @@ export namespace compute_preview { * * // Example response * // { - * // "address": "my_address", - * // "availabilityZone": "my_availabilityZone", - * // "availableFeatures": [], - * // "availableLinkTypes": [], - * // "city": "my_city", - * // "continent": "my_continent", + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, * // "creationTimestamp": "my_creationTimestamp", - * // "crossSiteInterconnectInfos": [], * // "description": "my_description", - * // "facilityProvider": "my_facilityProvider", - * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", * // "id": "my_id", + * // "incompatibleLicenses": [], * // "kind": "my_kind", + * // "licenseAlias": [], + * // "minimumRetention": {}, + * // "multiTenantOnly": false, * // "name": "my_name", - * // "peeringdbFacilityId": "my_peeringdbFacilityId", - * // "regionInfos": [], + * // "osLicense": false, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], * // "selfLink": "my_selfLink", - * // "singleRegionProductionCriticalPeerLocations": [], - * // "status": "my_status", - * // "supportsPzs": false + * // "soleTenantOnly": false, + * // "state": "my_state", + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -125316,53 +133475,51 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectlocations$Get, + params: Params$Resource$Licensecodes$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectlocations$Get, + params?: Params$Resource$Licensecodes$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectlocations$Get, + params: Params$Resource$Licensecodes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectlocations$Get, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Licensecodes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectlocations$Get, - callback: BodyResponseCallback + params: Params$Resource$Licensecodes$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectlocations$Get - | BodyResponseCallback + | Params$Resource$Licensecodes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectlocations$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Licensecodes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectlocations$Get; + params = {} as Params$Resource$Licensecodes$Get; options = {}; } @@ -125377,7 +133534,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectLocations/{interconnectLocation}' + '/compute/v1/projects/{project}/global/licenseCodes/{licenseCode}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -125385,23 +133542,26 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnectLocation'], - pathParams: ['interconnectLocation', 'project'], + requiredParams: ['project', 'licenseCode'], + pathParams: ['licenseCode', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of interconnect locations available to the specified - * project. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -125434,102 +133594,23 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectLocations.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.licenseCodes.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -125545,54 +133626,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Interconnectlocations$List, + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Interconnectlocations$List, + getIamPolicy( + params?: Params$Resource$Licensecodes$Getiampolicy, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Interconnectlocations$List, + ): Promise>; + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Interconnectlocations$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Interconnectlocations$List, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Licensecodes$Getiampolicy, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectlocations$List - | BodyResponseCallback + | Params$Resource$Licensecodes$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectlocations$List; + {}) as Params$Resource$Licensecodes$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectlocations$List; + params = {} as Params$Resource$Licensecodes$Getiampolicy; options = {}; } @@ -125607,7 +133686,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectLocations' + '/compute/v1/projects/{project}/global/licenseCodes/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -125615,136 +133694,26 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Interconnectlocations$Get extends StandardParameters { - /** - * Name of the interconnect location to return. - */ - interconnectLocation?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnectlocations$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - } - - export class Resource$Interconnectremotelocations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Returns the details for the specified interconnect remote location. Gets a - * list of available interconnect remote locations by making alist() request. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -125768,7 +133737,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -125777,39 +133745,31 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectRemoteLocations.get({ - * // Name of the interconnect remote location to return. - * interconnectRemoteLocation: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenseCodes.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "address": "my_address", - * // "attachmentConfigurationConstraints": {}, - * // "city": "my_city", - * // "constraints": {}, - * // "continent": "my_continent", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "facilityProvider": "my_facilityProvider", - * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", - * // "id": "my_id", - * // "kind": "my_kind", - * // "lacp": "my_lacp", - * // "maxLagSize100Gbps": 0, - * // "maxLagSize10Gbps": 0, - * // "maxLagSize400Gbps": 0, - * // "name": "my_name", - * // "peeringdbFacilityId": "my_peeringdbFacilityId", - * // "permittedConnections": [], - * // "remoteService": "my_remoteService", - * // "selfLink": "my_selfLink", - * // "status": "my_status" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -125825,223 +133785,145 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Interconnectremotelocations$Get, + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Interconnectremotelocations$Get, + setIamPolicy( + params?: Params$Resource$Licensecodes$Setiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Interconnectremotelocations$Get, + ): Promise>; + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectremotelocations$Get, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Interconnectremotelocations$Get, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + callback: BodyResponseCallback ): void; - get( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectremotelocations$Get - | BodyResponseCallback + | Params$Resource$Licensecodes$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectremotelocations$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectremotelocations$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnectRemoteLocations/{interconnectRemoteLocation}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'interconnectRemoteLocation'], - pathParams: ['interconnectRemoteLocation', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Retrieves the list of interconnect remote locations available to the - * specified project. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnectRemoteLocations.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Licensecodes$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Licensecodes$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/licenseCodes/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.licenseCodes.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "permissions": [] * // } * } * @@ -126057,57 +133939,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Interconnectremotelocations$List, + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Interconnectremotelocations$List, + testIamPermissions( + params?: Params$Resource$Licensecodes$Testiampermissions, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Interconnectremotelocations$List, + ): Promise>; + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Interconnectremotelocations$List, + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Interconnectremotelocations$List, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - list( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnectremotelocations$List - | BodyResponseCallback + | Params$Resource$Licensecodes$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectremotelocations$List; + {}) as Params$Resource$Licensecodes$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectremotelocations$List; + params = {} as Params$Resource$Licensecodes$Testiampermissions; options = {}; } @@ -126122,145 +134003,95 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnectRemoteLocations' + '/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Interconnectremotelocations$Get extends StandardParameters { + export interface Params$Resource$Licensecodes$Get extends StandardParameters { /** - * Name of the interconnect remote location to return. + * Number corresponding to the License code resource to return. */ - interconnectRemoteLocation?: string; + licenseCode?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnectremotelocations$List extends StandardParameters { + export interface Params$Resource$Licensecodes$Getiampolicy extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. + * Requested IAM Policy version. */ - filter?: string; + optionsRequestedPolicyVersion?: number; /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * Project ID for this request. */ - maxResults?: number; + project?: string; /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * Name or id of the resource for this request. */ - orderBy?: string; + resource?: string; + } + export interface Params$Resource$Licensecodes$Setiampolicy extends StandardParameters { /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Project ID for this request. */ - pageToken?: string; + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Licensecodes$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Interconnects { + export class Resource$Licenses { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified Interconnect. + * Deletes the specified license. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -126292,9 +134123,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.delete({ - * // Name of the interconnect to delete. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.delete({ + * // Name of the license resource to delete. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -126320,6 +134151,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -126362,31 +134194,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Interconnects$Delete, + params: Params$Resource$Licenses$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Interconnects$Delete, + params?: Params$Resource$Licenses$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Interconnects$Delete, + params: Params$Resource$Licenses$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnects$Delete, + params: Params$Resource$Licenses$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnects$Delete, + params: Params$Resource$Licenses$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Interconnects$Delete + | Params$Resource$Licenses$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -126400,13 +134232,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Delete; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Delete; + params = {} as Params$Resource$Licenses$Delete; options = {}; } @@ -126421,7 +134252,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}' + '/compute/v1/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -126429,8 +134260,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { @@ -126444,8 +134275,10 @@ export namespace compute_preview { } /** - * Returns the specified Interconnect. Get a list of available Interconnects - * by making a list() request. + * Returns the specified License resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -126478,9 +134311,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.get({ - * // Name of the interconnect to return. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.get({ + * // Name of the License resource to return. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -126489,44 +134322,28 @@ export namespace compute_preview { * * // Example response * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", * // "description": "my_description", - * // "effectiveLocation": "my_effectiveLocation", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", + * // "incompatibleLicenses": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", + * // "osLicense": false, * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, - * // "satisfiesPzs": false, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -126543,213 +134360,50 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnects$Get, + params: Params$Resource$Licenses$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnects$Get, + params?: Params$Resource$Licenses$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnects$Get, + params: Params$Resource$Licenses$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnects$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Licenses$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnects$Get, - callback: BodyResponseCallback + params: Params$Resource$Licenses$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnects$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the interconnectDiagnostics for the specified - * Interconnect. - * - * In the event of a - * global outage, do not use this API to make decisions about where to - * redirect your network traffic. - * - * Unlike a VLAN attachment, which is regional, a Cloud Interconnect - * connection is a global resource. A global outage can prevent this - * API from functioning properly. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnects.getDiagnostics({ - * // Name of the interconnect resource to query. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "result": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: StreamMethodOptions - ): Promise>; - getDiagnostics( - params?: Params$Resource$Interconnects$Getdiagnostics, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - callback: BodyResponseCallback - ): void; - getDiagnostics( - callback: BodyResponseCallback - ): void; - getDiagnostics( - paramsOrCallback?: - | Params$Resource$Interconnects$Getdiagnostics - | BodyResponseCallback + | Params$Resource$Licenses$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Getdiagnostics; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Getdiagnostics; + params = {} as Params$Resource$Licenses$Get; options = {}; } @@ -126764,7 +134418,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}/getDiagnostics' + '/compute/v1/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -126772,25 +134426,26 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Returns the interconnectMacsecConfig for the specified - * Interconnect. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -126823,19 +134478,23 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.getMacsecConfig({ - * // Name of the interconnect resource to query. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { + * // "auditConfigs": [], + * // "bindings": [], * // "etag": "my_etag", - * // "result": {} + * // "version": 0 * // } * } * @@ -126851,61 +134510,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, + getIamPolicy( + params: Params$Resource$Licenses$Getiampolicy, options: StreamMethodOptions ): Promise>; - getMacsecConfig( - params?: Params$Resource$Interconnects$Getmacsecconfig, + getIamPolicy( + params?: Params$Resource$Licenses$Getiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, + ): Promise>; + getIamPolicy( + params: Params$Resource$Licenses$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Licenses$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getMacsecConfig( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Licenses$Getiampolicy, + callback: BodyResponseCallback ): void; - getMacsecConfig( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnects$Getmacsecconfig - | BodyResponseCallback + | Params$Resource$Licenses$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Getmacsecconfig; + {}) as Params$Resource$Licenses$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Getmacsecconfig; + params = {} as Params$Resource$Licenses$Getiampolicy; options = {}; } @@ -126920,7 +134570,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}/getMacsecConfig' + '/compute/v1/projects/{project}/global/licenses/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -126928,25 +134578,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates an Interconnect in the specified project using - * the data included in the request. + * Create a License resource in the specified project. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -126970,6 +134620,9 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/devstorage.full_control', + * 'https://www.googleapis.com/auth/devstorage.read_only', + * 'https://www.googleapis.com/auth/devstorage.read_write', * ], * }); * @@ -126978,7 +134631,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.insert({ + * const res = await compute.licenses.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -127001,44 +134654,28 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", * // "description": "my_description", - * // "effectiveLocation": "my_effectiveLocation", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", + * // "incompatibleLicenses": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", + * // "osLicense": false, * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, - * // "satisfiesPzs": false, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -127049,6 +134686,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -127091,31 +134729,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnects$Insert, + params: Params$Resource$Licenses$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnects$Insert, + params?: Params$Resource$Licenses$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnects$Insert, + params: Params$Resource$Licenses$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnects$Insert, + params: Params$Resource$Licenses$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnects$Insert, + params: Params$Resource$Licenses$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnects$Insert + | Params$Resource$Licenses$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -127129,13 +134767,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Insert; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Insert; + params = {} as Params$Resource$Licenses$Insert; options = {}; } @@ -127149,7 +134786,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/interconnects' + rootUrl + '/compute/v1/projects/{project}/global/licenses' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -127172,7 +134809,15 @@ export namespace compute_preview { } /** - * Retrieves the list of Interconnects available to the specified project. + * Retrieves the list of licenses + * available in the specified project. This method does not + * get any licenses that belong to other projects, including licenses attached + * to publicly-available images, like Debian 9. If you want to get a list of + * publicly-available licenses, use this method to make a request to the + * respective image project, such as debian-cloud orwindows-cloud. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -127205,7 +134850,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.list({ + * const res = await compute.licenses.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -127297,7 +134942,6 @@ export namespace compute_preview { * // { * // "id": "my_id", * // "items": [], - * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", * // "warning": {} @@ -127317,52 +134961,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnects$List, + params: Params$Resource$Licenses$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnects$List, + params?: Params$Resource$Licenses$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Interconnects$List, + params: Params$Resource$Licenses$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnects$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Licenses$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnects$List, - callback: BodyResponseCallback + params: Params$Resource$Licenses$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Interconnects$List - | BodyResponseCallback + | Params$Resource$Licenses$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$List; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$List; + params = {} as Params$Resource$Licenses$List; options = {}; } @@ -127376,7 +135020,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/interconnects' + rootUrl + '/compute/v1/projects/{project}/global/licenses' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -127389,20 +135033,21 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified Interconnect with the data included in the request. - * This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -127434,69 +135079,20 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.patch({ - * // Name of the interconnect to update. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", - * // "description": "my_description", - * // "effectiveLocation": "my_effectiveLocation", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", - * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, - * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", - * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -127504,35 +135100,10 @@ export namespace compute_preview { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -127548,52 +135119,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Interconnects$Patch, + setIamPolicy( + params: Params$Resource$Licenses$Setiampolicy, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Interconnects$Patch, + setIamPolicy( + params?: Params$Resource$Licenses$Setiampolicy, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Interconnects$Patch, + ): Promise>; + setIamPolicy( + params: Params$Resource$Licenses$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnects$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Licenses$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnects$Patch, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Licenses$Setiampolicy, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnects$Patch - | BodyResponseCallback + | Params$Resource$Licenses$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Patch; + {}) as Params$Resource$Licenses$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Patch; + params = {} as Params$Resource$Licenses$Setiampolicy; options = {}; } @@ -127608,32 +135179,33 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}' + '/compute/v1/projects/{project}/global/licenses/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on an Interconnect. To learn more about labels, - * read the Labeling - * Resources documentation. + * Returns permissions that a caller has on the specified resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -127657,63 +135229,35 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.interconnects.setLabels({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.licenses.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] * // } * } * @@ -127729,52 +135273,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Interconnects$Setlabels, + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Interconnects$Setlabels, + testIamPermissions( + params?: Params$Resource$Licenses$Testiampermissions, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Interconnects$Setlabels, + ): Promise>; + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Interconnects$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Interconnects$Setlabels, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnects$Setlabels - | BodyResponseCallback + | Params$Resource$Licenses$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Setlabels; + {}) as Params$Resource$Licenses$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Setlabels; + params = {} as Params$Resource$Licenses$Testiampermissions; options = {}; } @@ -127789,7 +135337,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{resource}/setLabels' + '/compute/v1/projects/{project}/global/licenses/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -127802,17 +135350,20 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets name of an interconnect. + * Updates a License resource in the specified project. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -127844,15 +135395,15 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.setName({ - * // Name of the interconnect to update. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.update({ + * // The license name for this request. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID - * // so that if you must retry your request, the server will know to ignore - * // the request if it has already been completed. + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. * // * // 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 @@ -127864,13 +135415,35 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "currentName": "my_currentName", - * // "name": "my_name" + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "incompatibleLicenses": [], + * // "kind": "my_kind", + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, + * // "name": "my_name", + * // "osLicense": false, + * // "params": {}, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -127881,6 +135454,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -127922,32 +135496,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setName( - params: Params$Resource$Interconnects$Setname, + update( + params: Params$Resource$Licenses$Update, options: StreamMethodOptions ): Promise>; - setName( - params?: Params$Resource$Interconnects$Setname, + update( + params?: Params$Resource$Licenses$Update, options?: MethodOptions ): Promise>; - setName( - params: Params$Resource$Interconnects$Setname, + update( + params: Params$Resource$Licenses$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setName( - params: Params$Resource$Interconnects$Setname, + update( + params: Params$Resource$Licenses$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setName( - params: Params$Resource$Interconnects$Setname, + update( + params: Params$Resource$Licenses$Update, callback: BodyResponseCallback ): void; - setName(callback: BodyResponseCallback): void; - setName( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Interconnects$Setname + | Params$Resource$Licenses$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -127961,13 +135535,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Setname; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Setname; + params = {} as Params$Resource$Licenses$Update; options = {}; } @@ -127982,16 +135555,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/interconnects/{interconnect}/setName' + '/compute/v1/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { @@ -128005,11 +135578,11 @@ export namespace compute_preview { } } - export interface Params$Resource$Interconnects$Delete extends StandardParameters { + export interface Params$Resource$Licenses$Delete extends StandardParameters { /** - * Name of the interconnect to delete. + * Name of the license resource to delete. */ - interconnect?: string; + license?: string; /** * Project ID for this request. */ @@ -128031,37 +135604,31 @@ export namespace compute_preview { */ requestId?: string; } - export interface Params$Resource$Interconnects$Get extends StandardParameters { + export interface Params$Resource$Licenses$Get extends StandardParameters { /** - * Name of the interconnect to return. + * Name of the License resource to return. */ - interconnect?: string; + license?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnects$Getdiagnostics extends StandardParameters { + export interface Params$Resource$Licenses$Getiampolicy extends StandardParameters { /** - * Name of the interconnect resource to query. + * Requested IAM Policy version. */ - interconnect?: string; + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: string; - } - export interface Params$Resource$Interconnects$Getmacsecconfig extends StandardParameters { - /** - * Name of the interconnect resource to query. - */ - interconnect?: string; /** - * Project ID for this request. + * Name or id of the resource for this request. */ - project?: string; + resource?: string; } - export interface Params$Resource$Interconnects$Insert extends StandardParameters { + export interface Params$Resource$Licenses$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -128086,9 +135653,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$Interconnect; + requestBody?: Schema$License; } - export interface Params$Resource$Interconnects$List extends StandardParameters { + export interface Params$Resource$Licenses$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -128183,38 +135750,22 @@ export namespace compute_preview { */ project?: string; } - export interface Params$Resource$Interconnects$Patch extends StandardParameters { - /** - * Name of the interconnect to update. - */ - interconnect?: string; + export interface Params$Resource$Licenses$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Name or id of the resource for this request. */ - requestId?: string; + resource?: string; /** * Request body metadata */ - requestBody?: Schema$Interconnect; + requestBody?: Schema$GlobalSetPolicyRequest; } - export interface Params$Resource$Interconnects$Setlabels extends StandardParameters { + export interface Params$Resource$Licenses$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -128227,21 +135778,21 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$GlobalSetLabelsRequest; + requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Interconnects$Setname extends StandardParameters { + export interface Params$Resource$Licenses$Update extends StandardParameters { /** - * Name of the interconnect to update. + * The license name for this request. */ - interconnect?: string; + license?: string; /** * Project ID for this request. */ project?: string; /** - * An optional request ID to identify requests. Specify a unique request ID - * so that if you must retry your request, the server will know to ignore - * the request if it has already been completed. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * * 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 @@ -128254,25 +135805,211 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$InterconnectsSetNameRequest; + requestBody?: Schema$License; } - export class Resource$Licensecodes { + export class Resource$Machineimages { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Return a specified license code. License codes are mirrored across - * all projects that have permissions to read the License Code. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Deletes the specified machine image. Deleting a machine image is permanent + * and cannot be undone. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.machineImages.delete({ + * // The name of the machine image to delete. + * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Machineimages$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Machineimages$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Machineimages$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Machineimages$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Machineimages$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Machineimages$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Machineimages$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/machineImages/{machineImage}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'machineImage'], + pathParams: ['machineImage', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the specified machine image. * @example * ```js * // Before running the sample: @@ -128305,9 +136042,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.get({ - * // Number corresponding to the License code resource to return. - * licenseCode: '[0-9]{0,61}?', + * const res = await compute.machineImages.get({ + * // The name of the machine image. + * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -128316,25 +136053,27 @@ export namespace compute_preview { * * // Example response * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "guestFlush": false, * // "id": "my_id", - * // "incompatibleLicenses": [], + * // "instanceProperties": {}, * // "kind": "my_kind", - * // "licenseAlias": [], - * // "minimumRetention": {}, - * // "multiTenantOnly": false, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "machineImageEncryptionKey": {}, * // "name": "my_name", - * // "osLicense": false, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], + * // "params": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "savedDisks": [], * // "selfLink": "my_selfLink", - * // "soleTenantOnly": false, - * // "state": "my_state", - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" + * // "sourceDiskEncryptionKeys": [], + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceProperties": {}, + * // "status": "my_status", + * // "storageLocations": [], + * // "totalStorageBytes": "my_totalStorageBytes" * // } * } * @@ -128351,51 +136090,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Licensecodes$Get, + params: Params$Resource$Machineimages$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Licensecodes$Get, + params?: Params$Resource$Machineimages$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Licensecodes$Get, + params: Params$Resource$Machineimages$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Licensecodes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Machineimages$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Licensecodes$Get, - callback: BodyResponseCallback + params: Params$Resource$Machineimages$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Licensecodes$Get - | BodyResponseCallback + | Params$Resource$Machineimages$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licensecodes$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Get; + params = {} as Params$Resource$Machineimages$Get; options = {}; } @@ -128410,7 +136150,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenseCodes/{licenseCode}' + '/compute/v1/projects/{project}/global/machineImages/{machineImage}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -128418,26 +136158,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'licenseCode'], - pathParams: ['licenseCode', 'project'], + requiredParams: ['project', 'machineImage'], + pathParams: ['machineImage', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** * Gets the access control policy for a resource. May be empty if no such * policy or resource exists. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. * @example * ```js * // Before running the sample: @@ -128470,7 +136207,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.getIamPolicy({ + * const res = await compute.machineImages.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. @@ -128503,31 +136240,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Licensecodes$Getiampolicy, + params: Params$Resource$Machineimages$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Licensecodes$Getiampolicy, + params?: Params$Resource$Machineimages$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Licensecodes$Getiampolicy, + params: Params$Resource$Machineimages$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Licensecodes$Getiampolicy, + params: Params$Resource$Machineimages$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Licensecodes$Getiampolicy, + params: Params$Resource$Machineimages$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Licensecodes$Getiampolicy + | Params$Resource$Machineimages$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -128542,12 +136279,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licensecodes$Getiampolicy; + {}) as Params$Resource$Machineimages$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Getiampolicy; + params = {} as Params$Resource$Machineimages$Getiampolicy; options = {}; } @@ -128562,7 +136299,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenseCodes/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/machineImages/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -128585,11 +136322,11 @@ export namespace compute_preview { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Creates a machine image in the specified project using the + * data that is included in the request. If you are creating a new machine + * image to update an existing instance, your new machine image should use the + * same network or, if applicable, the same subnetwork as the original + * instance. * @example * ```js * // Before running the sample: @@ -128621,20 +136358,52 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.setIamPolicy({ + * const res = await compute.machineImages.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Required. Source instance that is used to create the machine image from. + * sourceInstance: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "guestFlush": false, + * // "id": "my_id", + * // "instanceProperties": {}, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "machineImageEncryptionKey": {}, + * // "name": "my_name", + * // "params": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "savedDisks": [], + * // "selfLink": "my_selfLink", + * // "sourceDiskEncryptionKeys": [], + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceProperties": {}, + * // "status": "my_status", + * // "storageLocations": [], + * // "totalStorageBytes": "my_totalStorageBytes" * // } * }, * }); @@ -128642,10 +136411,36 @@ export namespace compute_preview { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -128661,52 +136456,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Licensecodes$Setiampolicy, + insert( + params: Params$Resource$Machineimages$Insert, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Licensecodes$Setiampolicy, + insert( + params?: Params$Resource$Machineimages$Insert, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Licensecodes$Setiampolicy, + ): Promise>; + insert( + params: Params$Resource$Machineimages$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Licensecodes$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Machineimages$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Licensecodes$Setiampolicy, - callback: BodyResponseCallback + insert( + params: Params$Resource$Machineimages$Insert, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Licensecodes$Setiampolicy - | BodyResponseCallback + | Params$Resource$Machineimages$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licensecodes$Setiampolicy; + {}) as Params$Resource$Machineimages$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Setiampolicy; + params = {} as Params$Resource$Machineimages$Insert; options = {}; } @@ -128720,8 +136515,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/licenseCodes/{resource}/setIamPolicy' + rootUrl + '/compute/v1/projects/{project}/global/machineImages' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -128729,25 +136523,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Retrieves a list of machine images that are contained within + * the specified project. * @example * ```js * // Before running the sample: @@ -128780,26 +136572,102 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.testIamPermissions({ + * const res = await compute.machineImages.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -128815,56 +136683,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, + list( + params: Params$Resource$Machineimages$List, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Licensecodes$Testiampermissions, + list( + params?: Params$Resource$Machineimages$List, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, + ): Promise>; + list( + params: Params$Resource$Machineimages$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, - callback: BodyResponseCallback + list( + params: Params$Resource$Machineimages$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + list( + params: Params$Resource$Machineimages$List, + callback: BodyResponseCallback ): void; - testIamPermissions( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Licensecodes$Testiampermissions - | BodyResponseCallback + | Params$Resource$Machineimages$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licensecodes$Testiampermissions; + {}) as Params$Resource$Machineimages$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Testiampermissions; + params = {} as Params$Resource$Machineimages$List; options = {}; } @@ -128878,96 +136743,187 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions' + rootUrl + '/compute/v1/projects/{project}/global/machineImages' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Licensecodes$Get extends StandardParameters { - /** - * Number corresponding to the License code resource to return. - */ - licenseCode?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Licensecodes$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Licensecodes$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Licensecodes$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.machineImages.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - resource?: string; + setIamPolicy( + params: Params$Resource$Machineimages$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Machineimages$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Machineimages$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Machineimages$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Machineimages$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Machineimages$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Machineimages$Setiampolicy; + options = {}; + } - export class Resource$Licenses { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/machineImages/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Deletes the specified license. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Sets the labels on a machine image. To learn more about labels, read theLabeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -128999,26 +136955,21 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.delete({ - * // Name of the license resource to delete. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.machineImages.setLabels({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); * @@ -129027,6 +136978,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -129068,32 +137020,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Licenses$Delete, + setLabels( + params: Params$Resource$Machineimages$Setlabels, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Licenses$Delete, + setLabels( + params?: Params$Resource$Machineimages$Setlabels, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Licenses$Delete, + setLabels( + params: Params$Resource$Machineimages$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Licenses$Delete, + setLabels( + params: Params$Resource$Machineimages$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Licenses$Delete, + setLabels( + params: Params$Resource$Machineimages$Setlabels, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Licenses$Delete + | Params$Resource$Machineimages$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -129107,12 +137059,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Delete; + params = {} as Params$Resource$Machineimages$Setlabels; options = {}; } @@ -129127,16 +137080,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenses/{license}' + '/compute/v1/projects/{project}/global/machineImages/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -129150,10 +137103,7 @@ export namespace compute_preview { } /** - * Returns the specified License resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -129186,39 +137136,26 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.get({ - * // Name of the License resource to return. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.machineImages.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "id": "my_id", - * // "incompatibleLicenses": [], - * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, - * // "name": "my_name", - * // "osLicense": false, - * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" + * // "permissions": [] * // } * } * @@ -129234,51 +137171,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Licenses$Get, + testIamPermissions( + params: Params$Resource$Machineimages$Testiampermissions, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Licenses$Get, + testIamPermissions( + params?: Params$Resource$Machineimages$Testiampermissions, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Licenses$Get, + ): Promise>; + testIamPermissions( + params: Params$Resource$Machineimages$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Licenses$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Machineimages$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Licenses$Get, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Machineimages$Testiampermissions, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Licenses$Get - | BodyResponseCallback + | Params$Resource$Machineimages$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Machineimages$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Get; + params = {} as Params$Resource$Machineimages$Testiampermissions; options = {}; } @@ -129293,34 +137235,262 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenses/{license}' + '/compute/v1/projects/{project}/global/machineImages/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Machineimages$Delete extends StandardParameters { /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * The name of the machine image to delete. + */ + machineImage?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + } + export interface Params$Resource$Machineimages$Get extends StandardParameters { + /** + * The name of the machine image. + */ + machineImage?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Machineimages$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Machineimages$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Required. Source instance that is used to create the machine image from. + */ + sourceInstance?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$MachineImage; + } + export interface Params$Resource$Machineimages$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Machineimages$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Machineimages$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Machineimages$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Machinetypes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves an aggregated list of machine types. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -129353,23 +137523,114 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.machineTypes.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -129385,52 +137646,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, + aggregatedList( + params: Params$Resource$Machinetypes$Aggregatedlist, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Licenses$Getiampolicy, + aggregatedList( + params?: Params$Resource$Machinetypes$Aggregatedlist, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, + ): Promise>; + aggregatedList( + params: Params$Resource$Machinetypes$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Machinetypes$Aggregatedlist, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Machinetypes$Aggregatedlist, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Licenses$Getiampolicy - | BodyResponseCallback + | Params$Resource$Machinetypes$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Getiampolicy; + {}) as Params$Resource$Machinetypes$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Getiampolicy; + params = {} as Params$Resource$Machinetypes$Aggregatedlist; options = {}; } @@ -129444,8 +137709,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/licenses/{resource}/getIamPolicy' + rootUrl + '/compute/v1/projects/{project}/aggregated/machineTypes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -129453,25 +137717,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Create a License resource in the specified project. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns the specified machine type. * @example * ```js * // Before running the sample: @@ -129495,9 +137756,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/devstorage.full_control', - * 'https://www.googleapis.com/auth/devstorage.read_only', - * 'https://www.googleapis.com/auth/devstorage.read_write', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -129506,86 +137765,35 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.insert({ + * const res = await compute.machineTypes.get({ + * // Name of the machine type to return. + * machineType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "id": "my_id", - * // "incompatibleLicenses": [], - * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, - * // "name": "my_name", - * // "osLicense": false, - * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" - * // } - * }, + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "accelerators": [], + * // "architecture": "my_architecture", + * // "bundledLocalSsds": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "guestCpus": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "imageSpaceGb": 0, + * // "isSharedCpu": false, * // "kind": "my_kind", + * // "maximumPersistentDisks": 0, + * // "maximumPersistentDisksSizeGb": "my_maximumPersistentDisksSizeGb", + * // "memoryMb": 0, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -129602,51 +137810,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Licenses$Insert, + get( + params: Params$Resource$Machinetypes$Get, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Licenses$Insert, + get( + params?: Params$Resource$Machinetypes$Get, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Licenses$Insert, + ): Promise>; + get( + params: Params$Resource$Machinetypes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Licenses$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Machinetypes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Licenses$Insert, - callback: BodyResponseCallback + get( + params: Params$Resource$Machinetypes$Get, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Licenses$Insert - | BodyResponseCallback + | Params$Resource$Machinetypes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Insert; + let params = (paramsOrCallback || {}) as Params$Resource$Machinetypes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Insert; + params = {} as Params$Resource$Machinetypes$Get; options = {}; } @@ -129660,38 +137869,32 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/licenses' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/machineTypes/{machineType}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'machineType'], + pathParams: ['machineType', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of licenses - * available in the specified project. This method does not - * get any licenses that belong to other projects, including licenses attached - * to publicly-available images, like Debian 9. If you want to get a list of - * publicly-available licenses, use this method to make a request to the - * respective image project, such as debian-cloud orwindows-cloud. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Retrieves a list of machine types available to the specified + * project. * @example * ```js * // Before running the sample: @@ -129724,7 +137927,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.list({ + * const res = await compute.machineTypes.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -129809,6 +138012,8 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -129816,6 +138021,7 @@ export namespace compute_preview { * // { * // "id": "my_id", * // "items": [], + * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", * // "warning": {} @@ -129835,52 +138041,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Licenses$List, + params: Params$Resource$Machinetypes$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Licenses$List, + params?: Params$Resource$Machinetypes$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Licenses$List, + params: Params$Resource$Machinetypes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Licenses$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Machinetypes$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Licenses$List, - callback: BodyResponseCallback + params: Params$Resource$Machinetypes$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Licenses$List - | BodyResponseCallback + | Params$Resource$Machinetypes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Machinetypes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$List; + params = {} as Params$Resource$Machinetypes$List; options = {}; } @@ -129894,7 +138100,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/licenses' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/machineTypes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -129902,184 +138109,253 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Machinetypes$Aggregatedlist extends StandardParameters { /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Machinetypes$Get extends StandardParameters { + /** + * Name of the machine type to return. + */ + machineType?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Machinetypes$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: * - * // Do the magic - * const res = await compute.licenses.setIamPolicy({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, - * }); - * console.log(res.data); + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * ``` + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, - options: StreamMethodOptions - ): Promise>; - setIamPolicy( - params?: Params$Resource$Licenses$Setiampolicy, - options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, - callback: BodyResponseCallback - ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( - paramsOrCallback?: - | Params$Resource$Licenses$Setiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Setiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Setiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/licenses/{resource}/setIamPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Managedrulesets { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Returns permissions that a caller has on the specified resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Gets the details for the specified managed ruleset name. * @example * ```js * // Before running the sample: @@ -130112,26 +138388,25 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.testIamPermissions({ + * const res = await compute.managedRulesets.get({ + * // Name of the managed ruleset to return. + * managedRuleset: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "changeLog": "my_changeLog", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "name": "my_name", + * // "ruleIds": [], + * // "rulesetId": "my_rulesetId", + * // "selfLink": "my_selfLink" * // } * } * @@ -130147,56 +138422,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, + get( + params: Params$Resource$Managedrulesets$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Licenses$Testiampermissions, + get( + params?: Params$Resource$Managedrulesets$Get, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Managedrulesets$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, - callback: BodyResponseCallback + get( + params: Params$Resource$Managedrulesets$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Managedrulesets$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Licenses$Testiampermissions - | BodyResponseCallback + | Params$Resource$Managedrulesets$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Testiampermissions; + {}) as Params$Resource$Managedrulesets$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Testiampermissions; + params = {} as Params$Resource$Managedrulesets$Get; options = {}; } @@ -130211,33 +138483,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/licenses/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/managedRulesets/{managedRuleset}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'managedRuleset'], + pathParams: ['managedRuleset', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a License resource in the specified project. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Retrieves the list of all the managed rulesets available. * @example * ```js * // Before running the sample: @@ -130261,6 +138530,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -130269,91 +138539,100 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.update({ - * // The license name for this request. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.managedRulesets.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "id": "my_id", - * // "incompatibleLicenses": [], - * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, - * // "name": "my_name", - * // "osLicense": false, - * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "items": [], + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} * // } * } * @@ -130369,51 +138648,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Licenses$Update, + list( + params: Params$Resource$Managedrulesets$List, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Licenses$Update, + list( + params?: Params$Resource$Managedrulesets$List, options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Licenses$Update, + ): Promise>; + list( + params: Params$Resource$Managedrulesets$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Licenses$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Managedrulesets$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Licenses$Update, - callback: BodyResponseCallback + list( + params: Params$Resource$Managedrulesets$List, + callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Licenses$Update - | BodyResponseCallback + | Params$Resource$Managedrulesets$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Update; + let params = (paramsOrCallback || + {}) as Params$Resource$Managedrulesets$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Update; + params = {} as Params$Resource$Managedrulesets$List; options = {}; } @@ -130427,108 +138708,40 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/global/licenses/{license}' + rootUrl + '/compute/v1/projects/{project}/global/managedRulesets' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Licenses$Delete extends StandardParameters { - /** - * Name of the license resource to delete. - */ - license?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - } - export interface Params$Resource$Licenses$Get extends StandardParameters { - /** - * Name of the License resource to return. - */ - license?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Licenses$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Managedrulesets$Get extends StandardParameters { /** - * Name or id of the resource for this request. + * Name of the managed ruleset to return. */ - resource?: string; - } - export interface Params$Resource$Licenses$Insert extends StandardParameters { + managedRuleset?: string; /** * Project ID for this request. */ project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$License; } - export interface Params$Resource$Licenses$List extends StandardParameters { + export interface Params$Resource$Managedrulesets$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -130623,81 +138836,264 @@ export namespace compute_preview { */ project?: string; } - export interface Params$Resource$Licenses$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Licenses$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; + export class Resource$Networkattachments { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Licenses$Update extends StandardParameters { - /** - * The license name for this request. - */ - license?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Retrieves the list of all NetworkAttachment resources, + * regional and global, available to the specified project. * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * update_mask indicates fields to be updated as part of this request. + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkAttachments.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - updateMask?: string; + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Networkattachments$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Networkattachments$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$License; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkattachments$Aggregatedlist; + options = {}; + } - export class Resource$Machineimages { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/aggregated/networkAttachments' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } } /** - * Deletes the specified machine image. Deleting a machine image is permanent - * and cannot be undone. + * Deletes the specified NetworkAttachment in the given scope * @example * ```js * // Before running the sample: @@ -130729,12 +139125,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.delete({ - * // The name of the machine image to delete. - * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkAttachments.delete({ + * // Name of the NetworkAttachment resource to delete. + * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -130748,6 +139146,7 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', * }); * console.log(res.data); @@ -130757,6 +139156,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -130799,31 +139199,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Networkattachments$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Machineimages$Delete, + params?: Params$Resource$Networkattachments$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Networkattachments$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Networkattachments$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Networkattachments$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Machineimages$Delete + | Params$Resource$Networkattachments$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -130838,12 +139238,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Delete; + {}) as Params$Resource$Networkattachments$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Delete; + params = {} as Params$Resource$Networkattachments$Delete; options = {}; } @@ -130858,7 +139258,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{machineImage}' + '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -130866,8 +139266,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'machineImage'], - pathParams: ['machineImage', 'project'], + requiredParams: ['project', 'region', 'networkAttachment'], + pathParams: ['networkAttachment', 'project', 'region'], context: this.context, }; if (callback) { @@ -130881,7 +139281,7 @@ export namespace compute_preview { } /** - * Returns the specified machine image. + * Returns the specified NetworkAttachment resource in the given scope. * @example * ```js * // Before running the sample: @@ -130914,38 +139314,34 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.get({ - * // The name of the machine image. - * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkAttachments.get({ + * // Name of the NetworkAttachment resource to return. + * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "connectionEndpoints": [], + * // "connectionPreference": "my_connectionPreference", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "guestFlush": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceProperties": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "machineImageEncryptionKey": {}, * // "name": "my_name", - * // "params": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "savedDisks": [], + * // "network": "my_network", + * // "producerAcceptLists": [], + * // "producerRejectLists": [], + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "sourceDiskEncryptionKeys": [], - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceProperties": {}, - * // "status": "my_status", - * // "storageLocations": [], - * // "totalStorageBytes": "my_totalStorageBytes" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] * // } * } * @@ -130962,52 +139358,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Machineimages$Get, + params: Params$Resource$Networkattachments$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Machineimages$Get, + params?: Params$Resource$Networkattachments$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Machineimages$Get, + params: Params$Resource$Networkattachments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Machineimages$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Networkattachments$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Machineimages$Get, - callback: BodyResponseCallback + params: Params$Resource$Networkattachments$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Machineimages$Get - | BodyResponseCallback + | Params$Resource$Networkattachments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Get; + {}) as Params$Resource$Networkattachments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Get; + params = {} as Params$Resource$Networkattachments$Get; options = {}; } @@ -131022,7 +139418,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{machineImage}' + '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -131030,17 +139426,17 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'machineImage'], - pathParams: ['machineImage', 'project'], + requiredParams: ['project', 'region', 'networkAttachment'], + pathParams: ['networkAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -131079,14 +139475,16 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.getIamPolicy({ + * const res = await compute.networkAttachments.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -131112,31 +139510,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + params: Params$Resource$Networkattachments$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Machineimages$Getiampolicy, + params?: Params$Resource$Networkattachments$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + params: Params$Resource$Networkattachments$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + params: Params$Resource$Networkattachments$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + params: Params$Resource$Networkattachments$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Machineimages$Getiampolicy + | Params$Resource$Networkattachments$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -131151,12 +139549,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Getiampolicy; + {}) as Params$Resource$Networkattachments$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Getiampolicy; + params = {} as Params$Resource$Networkattachments$Getiampolicy; options = {}; } @@ -131171,7 +139569,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -131179,8 +139577,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -131194,11 +139592,8 @@ export namespace compute_preview { } /** - * Creates a machine image in the specified project using the - * data that is included in the request. If you are creating a new machine - * image to update an existing instance, your new machine image should use the - * same network or, if applicable, the same subnetwork as the original - * instance. + * Creates a NetworkAttachment in the specified project in the given scope + * using the parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -131230,10 +139625,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.insert({ + * const res = await compute.networkAttachments.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -131247,35 +139644,28 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). + * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', - * // Required. Source instance that is used to create the machine image from. - * sourceInstance: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "connectionEndpoints": [], + * // "connectionPreference": "my_connectionPreference", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "guestFlush": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceProperties": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "machineImageEncryptionKey": {}, * // "name": "my_name", - * // "params": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "savedDisks": [], + * // "network": "my_network", + * // "producerAcceptLists": [], + * // "producerRejectLists": [], + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "sourceDiskEncryptionKeys": [], - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceProperties": {}, - * // "status": "my_status", - * // "storageLocations": [], - * // "totalStorageBytes": "my_totalStorageBytes" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] * // } * }, * }); @@ -131286,6 +139676,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -131328,31 +139719,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Machineimages$Insert, + params: Params$Resource$Networkattachments$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Machineimages$Insert, + params?: Params$Resource$Networkattachments$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Machineimages$Insert, + params: Params$Resource$Networkattachments$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Machineimages$Insert, + params: Params$Resource$Networkattachments$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Machineimages$Insert, + params: Params$Resource$Networkattachments$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Machineimages$Insert + | Params$Resource$Networkattachments$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -131367,12 +139758,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Insert; + {}) as Params$Resource$Networkattachments$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Insert; + params = {} as Params$Resource$Networkattachments$Insert; options = {}; } @@ -131386,7 +139777,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/machineImages' + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/networkAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -131394,8 +139786,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -131409,8 +139801,7 @@ export namespace compute_preview { } /** - * Retrieves a list of machine images that are contained within - * the specified project. + * Lists the NetworkAttachments for a project in the given scope. * @example * ```js * // Before running the sample: @@ -131443,7 +139834,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.list({ + * const res = await compute.networkAttachments.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -131528,6 +139919,8 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -131555,52 +139948,53 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Machineimages$List, + params: Params$Resource$Networkattachments$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Machineimages$List, + params?: Params$Resource$Networkattachments$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Machineimages$List, + params: Params$Resource$Networkattachments$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Machineimages$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Networkattachments$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Machineimages$List, - callback: BodyResponseCallback + params: Params$Resource$Networkattachments$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Machineimages$List - | BodyResponseCallback + | Params$Resource$Networkattachments$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$List; + {}) as Params$Resource$Networkattachments$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$List; + params = {} as Params$Resource$Networkattachments$List; options = {}; } @@ -131614,7 +140008,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/machineImages' + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/networkAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -131622,23 +140017,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Patches the specified NetworkAttachment resource with the data included in + * the request. This method supports PATCH + * semantics and usesJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -131670,20 +140067,49 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.setIamPolicy({ + * const res = await compute.networkAttachments.patch({ + * // Name of the NetworkAttachment resource to patch. + * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * // end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "connectionEndpoints": [], + * // "connectionPreference": "my_connectionPreference", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "network": "my_network", + * // "producerAcceptLists": [], + * // "producerRejectLists": [], + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] * // } * }, * }); @@ -131691,10 +140117,36 @@ export namespace compute_preview { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -131710,52 +140162,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, + patch( + params: Params$Resource$Networkattachments$Patch, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Machineimages$Setiampolicy, + patch( + params?: Params$Resource$Networkattachments$Patch, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, + ): Promise>; + patch( + params: Params$Resource$Networkattachments$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Networkattachments$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, - callback: BodyResponseCallback + patch( + params: Params$Resource$Networkattachments$Patch, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Machineimages$Setiampolicy - | BodyResponseCallback + | Params$Resource$Networkattachments$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Setiampolicy; + {}) as Params$Resource$Networkattachments$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Setiampolicy; + params = {} as Params$Resource$Networkattachments$Patch; options = {}; } @@ -131770,31 +140222,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'networkAttachment'], + pathParams: ['networkAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on a machine image. To learn more about labels, read theLabeling - * Resources documentation. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -131826,19 +140278,22 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.setLabels({ + * const res = await compute.networkAttachments.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -131846,35 +140301,10 @@ export namespace compute_preview { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -131890,52 +140320,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Machineimages$Setlabels, + setIamPolicy( + params: Params$Resource$Networkattachments$Setiampolicy, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Machineimages$Setlabels, + setIamPolicy( + params?: Params$Resource$Networkattachments$Setiampolicy, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Machineimages$Setlabels, + ): Promise>; + setIamPolicy( + params: Params$Resource$Networkattachments$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Machineimages$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Networkattachments$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Machineimages$Setlabels, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Networkattachments$Setiampolicy, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Machineimages$Setlabels - | BodyResponseCallback + | Params$Resource$Networkattachments$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Setlabels; + {}) as Params$Resource$Networkattachments$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Setlabels; + params = {} as Params$Resource$Networkattachments$Setiampolicy; options = {}; } @@ -131950,7 +140380,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{resource}/setLabels' + '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -131958,17 +140388,17 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -132006,12 +140436,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.testIamPermissions({ + * const res = await compute.networkAttachments.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -132042,26 +140474,26 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, + params: Params$Resource$Networkattachments$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Machineimages$Testiampermissions, + params?: Params$Resource$Networkattachments$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, + params: Params$Resource$Networkattachments$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, + params: Params$Resource$Networkattachments$Testiampermissions, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, + params: Params$Resource$Networkattachments$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -132069,7 +140501,7 @@ export namespace compute_preview { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Machineimages$Testiampermissions + | Params$Resource$Networkattachments$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -132085,12 +140517,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Testiampermissions; + {}) as Params$Resource$Networkattachments$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Testiampermissions; + params = {} as Params$Resource$Networkattachments$Testiampermissions; options = {}; } @@ -132105,7 +140537,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/machineImages/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -132113,8 +140545,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -132127,16 +140559,130 @@ export namespace compute_preview { } } } - - export interface Params$Resource$Machineimages$Delete extends StandardParameters { + + export interface Params$Resource$Networkattachments$Aggregatedlist extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Networkattachments$Delete extends StandardParameters { /** - * The name of the machine image to delete. + * Name of the NetworkAttachment resource to delete. */ - machineImage?: string; + networkAttachment?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region of this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -132151,20 +140697,25 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; } - export interface Params$Resource$Machineimages$Get extends StandardParameters { + export interface Params$Resource$Networkattachments$Get extends StandardParameters { /** - * The name of the machine image. + * Name of the NetworkAttachment resource to return. */ - machineImage?: string; + networkAttachment?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region of this request. + */ + region?: string; } - export interface Params$Resource$Machineimages$Getiampolicy extends StandardParameters { + export interface Params$Resource$Networkattachments$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -132173,16 +140724,24 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; + /** + * The name of the region for this request. + */ + region?: string; /** * Name or id of the resource for this request. */ resource?: string; } - export interface Params$Resource$Machineimages$Insert extends StandardParameters { + export interface Params$Resource$Networkattachments$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name of the region of this request. + */ + region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -132197,19 +140756,16 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). + * end_interface: MixerMutationRequestBuilder */ requestId?: string; - /** - * Required. Source instance that is used to create the machine image from. - */ - sourceInstance?: string; /** * Request body metadata */ - requestBody?: Schema$MachineImage; + requestBody?: Schema$NetworkAttachment; } - export interface Params$Resource$Machineimages$List extends StandardParameters { + export interface Params$Resource$Networkattachments$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -132303,27 +140859,56 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; + /** + * Name of the region of this request. + */ + region?: string; } - export interface Params$Resource$Machineimages$Setiampolicy extends StandardParameters { + export interface Params$Resource$Networkattachments$Patch extends StandardParameters { + /** + * Name of the NetworkAttachment resource to patch. + */ + networkAttachment?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * Name of the region for this request. */ - resource?: string; + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + * end_interface: MixerMutationRequestBuilder + */ + requestId?: string; /** * Request body metadata */ - requestBody?: Schema$GlobalSetPolicyRequest; + requestBody?: Schema$NetworkAttachment; } - export interface Params$Resource$Machineimages$Setlabels extends StandardParameters { + export interface Params$Resource$Networkattachments$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * The name of the region for this request. + */ + region?: string; /** * Name or id of the resource for this request. */ @@ -132332,13 +140917,17 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$GlobalSetLabelsRequest; + requestBody?: Schema$RegionSetPolicyRequest; } - export interface Params$Resource$Machineimages$Testiampermissions extends StandardParameters { + export interface Params$Resource$Networkattachments$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * The name of the region for this request. + */ + region?: string; /** * Name or id of the resource for this request. */ @@ -132350,14 +140939,15 @@ export namespace compute_preview { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Machinetypes { + export class Resource$Networkedgesecurityservices { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of machine types. + * Retrieves the list of all NetworkEdgeSecurityService resources available to + * the specified project. * * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. @@ -132393,7 +140983,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.aggregatedList({ + * const res = await compute.networkEdgeSecurityServices.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -132483,7 +141073,7 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. + * // Name of the project scoping this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // The Shared VPC service project id or service project number for which @@ -132494,6 +141084,7 @@ export namespace compute_preview { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": {}, * // "kind": "my_kind", @@ -132517,55 +141108,61 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, + params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Machinetypes$Aggregatedlist, + params?: Params$Resource$Networkedgesecurityservices$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, + params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, + params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Machinetypes$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkedgesecurityservices$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machinetypes$Aggregatedlist; + {}) as Params$Resource$Networkedgesecurityservices$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$Aggregatedlist; + params = + {} as Params$Resource$Networkedgesecurityservices$Aggregatedlist; options = {}; } @@ -132579,7 +141176,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/machineTypes' + rootUrl + + '/compute/v1/projects/{project}/aggregated/networkEdgeSecurityServices' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -132592,17 +141190,19 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Returns the specified machine type. + * Deletes the specified service. * @example * ```js * // Before running the sample: @@ -132626,7 +141226,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -132635,35 +141234,63 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.get({ - * // Name of the machine type to return. - * machineType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkEdgeSecurityServices.delete({ + * // Name of the network edge security service to delete. + * networkEdgeSecurityService: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "accelerators": [], - * // "architecture": "my_architecture", - * // "bundledLocalSsds": {}, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "guestCpus": 0, + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "imageSpaceGb": 0, - * // "isSharedCpu": false, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "maximumPersistentDisks": 0, - * // "maximumPersistentDisksSizeGb": "my_maximumPersistentDisksSizeGb", - * // "memoryMb": 0, * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -132680,52 +141307,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Machinetypes$Get, + delete( + params: Params$Resource$Networkedgesecurityservices$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Machinetypes$Get, + delete( + params?: Params$Resource$Networkedgesecurityservices$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Machinetypes$Get, + ): Promise>; + delete( + params: Params$Resource$Networkedgesecurityservices$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Machinetypes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networkedgesecurityservices$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Machinetypes$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networkedgesecurityservices$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Machinetypes$Get - | BodyResponseCallback + | Params$Resource$Networkedgesecurityservices$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Machinetypes$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Networkedgesecurityservices$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$Get; + params = {} as Params$Resource$Networkedgesecurityservices$Delete; options = {}; } @@ -132740,31 +141367,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/machineTypes/{machineType}' + '/compute/v1/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'machineType'], - pathParams: ['machineType', 'project', 'zone'], + requiredParams: ['project', 'region', 'networkEdgeSecurityService'], + pathParams: ['networkEdgeSecurityService', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of machine types available to the specified - * project. + * Gets a specified NetworkEdgeSecurityService. * @example * ```js * // Before running the sample: @@ -132797,104 +141423,31 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.networkEdgeSecurityServices.get({ + * // Name of the network edge security service to get. + * networkEdgeSecurityService: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "items": [], * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "params": {}, + * // "region": "my_region", + * // "securityPolicy": "my_securityPolicy", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId" * // } * } * @@ -132910,53 +141463,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Machinetypes$List, + get( + params: Params$Resource$Networkedgesecurityservices$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Machinetypes$List, + get( + params?: Params$Resource$Networkedgesecurityservices$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Machinetypes$List, + ): Promise>; + get( + params: Params$Resource$Networkedgesecurityservices$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Machinetypes$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Networkedgesecurityservices$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Machinetypes$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Networkedgesecurityservices$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Machinetypes$List - | BodyResponseCallback + | Params$Resource$Networkedgesecurityservices$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machinetypes$List; + {}) as Params$Resource$Networkedgesecurityservices$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$List; + params = {} as Params$Resource$Networkedgesecurityservices$Get; options = {}; } @@ -132971,7 +141527,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/machineTypes' + '/compute/v1/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -132979,253 +141535,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'region', 'networkEdgeSecurityService'], + pathParams: ['networkEdgeSecurityService', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Machinetypes$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Machinetypes$Get extends StandardParameters { - /** - * Name of the machine type to return. - */ - machineType?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Machinetypes$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - - export class Resource$Managedrulesets { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Gets the details for the specified managed ruleset name. + * Creates a new service in the specified project using the data included in + * the request. * @example * ```js * // Before running the sample: @@ -133249,7 +141575,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -133258,25 +141583,81 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.managedRulesets.get({ - * // Name of the managed ruleset to return. - * managedRuleset: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkEdgeSecurityServices.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // If true, the request will not be committed. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "params": {}, + * // "region": "my_region", + * // "securityPolicy": "my_securityPolicy", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "changeLog": "my_changeLog", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", * // "name": "my_name", - * // "ruleIds": [], - * // "rulesetId": "my_rulesetId", - * // "selfLink": "my_selfLink" + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -133292,53 +141673,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Managedrulesets$Get, + insert( + params: Params$Resource$Networkedgesecurityservices$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Managedrulesets$Get, + insert( + params?: Params$Resource$Networkedgesecurityservices$Insert, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Managedrulesets$Get, + ): Promise>; + insert( + params: Params$Resource$Networkedgesecurityservices$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Managedrulesets$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Networkedgesecurityservices$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Managedrulesets$Get, - callback: BodyResponseCallback + insert( + params: Params$Resource$Networkedgesecurityservices$Insert, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Managedrulesets$Get - | BodyResponseCallback + | Params$Resource$Networkedgesecurityservices$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Managedrulesets$Get; + {}) as Params$Resource$Networkedgesecurityservices$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Managedrulesets$Get; + params = {} as Params$Resource$Networkedgesecurityservices$Insert; options = {}; } @@ -133353,30 +141733,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/managedRulesets/{managedRuleset}' + '/compute/v1/projects/{project}/regions/{region}/networkEdgeSecurityServices' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'managedRuleset'], - pathParams: ['managedRuleset', 'project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of all the managed rulesets available. + * Patches the specified policy with the data included in the request. * @example * ```js * // Before running the sample: @@ -133400,7 +141780,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -133409,100 +141788,86 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.managedRulesets.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.networkEdgeSecurityServices.patch({ + * // Name of the network edge security service to update. + * networkEdgeSecurityService: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * paths: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "params": {}, + * // "region": "my_region", + * // "securityPolicy": "my_securityPolicy", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -133518,53 +141883,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Managedrulesets$List, + patch( + params: Params$Resource$Networkedgesecurityservices$Patch, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Managedrulesets$List, + patch( + params?: Params$Resource$Networkedgesecurityservices$Patch, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Managedrulesets$List, + ): Promise>; + patch( + params: Params$Resource$Networkedgesecurityservices$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Managedrulesets$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Networkedgesecurityservices$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Managedrulesets$List, - callback: BodyResponseCallback + patch( + params: Params$Resource$Networkedgesecurityservices$Patch, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Managedrulesets$List - | BodyResponseCallback + | Params$Resource$Networkedgesecurityservices$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Managedrulesets$List; + {}) as Params$Resource$Networkedgesecurityservices$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Managedrulesets$List; + params = {} as Params$Resource$Networkedgesecurityservices$Patch; options = {}; } @@ -133578,40 +141942,31 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/managedRulesets' + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region', 'networkEdgeSecurityService'], + pathParams: ['networkEdgeSecurityService', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Managedrulesets$Get extends StandardParameters { - /** - * Name of the managed ruleset to return. - */ - managedRuleset?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Managedrulesets$List extends StandardParameters { + export interface Params$Resource$Networkedgesecurityservices$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -133673,6 +142028,16 @@ export namespace compute_preview { * expressions. */ filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -133701,21 +142066,147 @@ export namespace compute_preview { * the next page of results. */ pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Networkedgesecurityservices$Delete extends StandardParameters { + /** + * Name of the network edge security service to delete. + */ + networkEdgeSecurityService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + } + export interface Params$Resource$Networkedgesecurityservices$Get extends StandardParameters { + /** + * Name of the network edge security service to get. + */ + networkEdgeSecurityService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Networkedgesecurityservices$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * If true, the request will not be committed. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEdgeSecurityService; + } + export interface Params$Resource$Networkedgesecurityservices$Patch extends StandardParameters { + /** + * Name of the network edge security service to update. + */ + networkEdgeSecurityService?: string; + /** + * + */ + paths?: string[]; /** * Project ID for this request. */ project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Indicates fields to be updated as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEdgeSecurityService; } - export class Resource$Networkattachments { + export class Resource$Networkendpointgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the list of all NetworkAttachment resources, - * regional and global, available to the specified project. + * Retrieves the list of network endpoint groups and sorts them by zone. * * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. @@ -133751,7 +142242,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.aggregatedList({ + * const res = await compute.networkEndpointGroups.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -133857,6 +142348,7 @@ export namespace compute_preview { * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -133874,56 +142366,60 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, + params: Params$Resource$Networkendpointgroups$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Networkattachments$Aggregatedlist, + params?: Params$Resource$Networkendpointgroups$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, + params: Params$Resource$Networkendpointgroups$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, + params: Params$Resource$Networkendpointgroups$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Networkendpointgroups$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Networkattachments$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Aggregatedlist; + {}) as Params$Resource$Networkendpointgroups$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Aggregatedlist; + params = {} as Params$Resource$Networkendpointgroups$Aggregatedlist; options = {}; } @@ -133938,7 +142434,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/aggregated/networkAttachments' + '/compute/v1/projects/{project}/aggregated/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -133951,19 +142447,19 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes the specified NetworkAttachment in the given scope + * Attach a list of network endpoints to the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -133995,14 +142491,216 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.delete({ - * // Name of the NetworkAttachment resource to delete. - * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkEndpointGroups.attachNetworkEndpoints({ + * // The name of the network endpoint group where you are attaching network + * // endpoints to. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkEndpoints": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + attachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + options: StreamMethodOptions + ): Promise>; + attachNetworkEndpoints( + params?: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + options?: MethodOptions + ): Promise>; + attachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( + paramsOrCallback?: + | Params$Resource$Networkendpointgroups$Attachnetworkendpoints + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkendpointgroups$Attachnetworkendpoints; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Networkendpointgroups$Attachnetworkendpoints; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified network endpoint group. The network endpoints in the + * NEG and the VM instances they belong to are not terminated when the NEG is + * deleted. Note that the NEG cannot be deleted if there are backend services + * referencing it. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkEndpointGroups.delete({ + * // The name of the network endpoint group to delete. It should comply with + * // RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region of this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -134016,8 +142714,10 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -134026,6 +142726,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -134068,31 +142769,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Networkattachments$Delete, + params: Params$Resource$Networkendpointgroups$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Networkattachments$Delete, + params?: Params$Resource$Networkendpointgroups$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Networkattachments$Delete, + params: Params$Resource$Networkendpointgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Networkattachments$Delete, + params: Params$Resource$Networkendpointgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Networkattachments$Delete, + params: Params$Resource$Networkendpointgroups$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Networkattachments$Delete + | Params$Resource$Networkendpointgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -134107,12 +142808,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Delete; + {}) as Params$Resource$Networkendpointgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Delete; + params = {} as Params$Resource$Networkendpointgroups$Delete; options = {}; } @@ -134127,7 +142828,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -134135,8 +142836,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'networkAttachment'], - pathParams: ['networkAttachment', 'project', 'region'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -134150,7 +142851,8 @@ export namespace compute_preview { } /** - * Returns the specified NetworkAttachment resource in the given scope. + * Detach a list of network endpoints from the specified network endpoint + * group. * @example * ```js * // Before running the sample: @@ -134174,7 +142876,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -134183,34 +142884,73 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.get({ - * // Name of the NetworkAttachment resource to return. - * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkEndpointGroups.detachNetworkEndpoints({ + * // The name of the network endpoint group where you are removing network + * // endpoints. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region of this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkEndpoints": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "connectionEndpoints": [], - * // "connectionPreference": "my_connectionPreference", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "network": "my_network", - * // "producerAcceptLists": [], - * // "producerRejectLists": [], + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -134226,53 +142966,55 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Networkattachments$Get, + detachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Networkattachments$Get, + detachNetworkEndpoints( + params?: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkattachments$Get, + ): Promise>; + detachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkattachments$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + detachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkattachments$Get, - callback: BodyResponseCallback + detachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + detachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + detachNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Networkattachments$Get - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Detachnetworkendpoints + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Get; + {}) as Params$Resource$Networkendpointgroups$Detachnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Get; + params = + {} as Params$Resource$Networkendpointgroups$Detachnetworkendpoints; options = {}; } @@ -134287,31 +143029,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'networkAttachment'], - pathParams: ['networkAttachment', 'project', 'region'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Returns the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -134344,25 +143085,41 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.networkEndpointGroups.get({ + * // The name of the network endpoint group. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "serviceClassId": "my_serviceClassId", + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "zone": "my_zone" * // } * } * @@ -134378,52 +143135,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Networkattachments$Getiampolicy, + get( + params: Params$Resource$Networkendpointgroups$Get, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Networkattachments$Getiampolicy, + get( + params?: Params$Resource$Networkendpointgroups$Get, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Networkattachments$Getiampolicy, + ): Promise>; + get( + params: Params$Resource$Networkendpointgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Networkattachments$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Networkendpointgroups$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Networkattachments$Getiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Networkendpointgroups$Get, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Networkattachments$Getiampolicy - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Getiampolicy; + {}) as Params$Resource$Networkendpointgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Getiampolicy; + params = {} as Params$Resource$Networkendpointgroups$Get; options = {}; } @@ -134438,7 +143197,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -134446,23 +143205,37 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a NetworkAttachment in the specified project in the given scope - * using the parameters that are included in the request. + * Creates a network endpoint group in the specified project using the + * parameters that are included in the request. + * + * Note: Use the following APIs to manage network endpoint groups: + * + * - + * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity + * NEGs): zonal + * API + * - + * To manage NEGs with regional scope (such as regional internet NEGs, + * serverless NEGs, Private Service Connect NEGs): regional + * API + * - + * To manage NEGs with global scope (such as global internet NEGs):global + * API * @example * ```js * // Before running the sample: @@ -134494,12 +143267,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.insert({ + * const res = await compute.networkEndpointGroups.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region of this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -134513,28 +143284,37 @@ export namespace compute_preview { * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). - * // end_interface: MixerMutationRequestBuilder * requestId: 'placeholder-value', + * // The name of the zone where + * // you want to create the network endpoint group. It should comply with + * // RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "connectionEndpoints": [], - * // "connectionPreference": "my_connectionPreference", + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, * // "description": "my_description", - * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", * // "network": "my_network", - * // "producerAcceptLists": [], - * // "producerRejectLists": [], + * // "networkAttachment": "my_networkAttachment", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] + * // "serviceClassId": "my_serviceClassId", + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "zone": "my_zone" * // } * }, * }); @@ -134545,6 +143325,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -134587,31 +143368,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Networkattachments$Insert, + params: Params$Resource$Networkendpointgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Networkattachments$Insert, + params?: Params$Resource$Networkendpointgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Networkattachments$Insert, + params: Params$Resource$Networkendpointgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Networkattachments$Insert, + params: Params$Resource$Networkendpointgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Networkattachments$Insert, + params: Params$Resource$Networkendpointgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Networkattachments$Insert + | Params$Resource$Networkendpointgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -134626,12 +143407,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Insert; + {}) as Params$Resource$Networkendpointgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Insert; + params = {} as Params$Resource$Networkendpointgroups$Insert; options = {}; } @@ -134646,7 +143427,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments' + '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -134654,8 +143435,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -134669,7 +143450,8 @@ export namespace compute_preview { } /** - * Lists the NetworkAttachments for a project in the given scope. + * Retrieves the list of network endpoint groups that are located in the + * specified project and zone. * @example * ```js * // Before running the sample: @@ -134702,7 +143484,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.list({ + * const res = await compute.networkEndpointGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -134787,8 +143569,9 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region of this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of thezone + * // where the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -134816,265 +143599,53 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Networkattachments$List, + params: Params$Resource$Networkendpointgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Networkattachments$List, + params?: Params$Resource$Networkendpointgroups$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Networkattachments$List, + params: Params$Resource$Networkendpointgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Networkattachments$List, + params: Params$Resource$Networkendpointgroups$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Networkattachments$List, - callback: BodyResponseCallback + params: Params$Resource$Networkendpointgroups$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Networkattachments$List - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Patches the specified NetworkAttachment resource with the data included in - * the request. This method supports PATCH - * semantics and usesJSON merge - * patch format and processing rules. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.networkAttachments.patch({ - * // Name of the NetworkAttachment resource to patch. - * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * // end_interface: MixerMutationRequestBuilder - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "connectionEndpoints": [], - * // "connectionPreference": "my_connectionPreference", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "producerAcceptLists": [], - * // "producerRejectLists": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - patch( - params: Params$Resource$Networkattachments$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Networkattachments$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Networkattachments$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Networkattachments$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Networkattachments$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Networkattachments$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Patch; + {}) as Params$Resource$Networkendpointgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Patch; + params = {} as Params$Resource$Networkendpointgroups$List; options = {}; } @@ -135089,31 +143660,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'networkAttachment'], - pathParams: ['networkAttachment', 'project', 'region'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Lists the network endpoints in the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -135137,6 +143707,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -135145,22 +143716,103 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.setIamPolicy({ + * const res = await compute.networkEndpointGroups.listNetworkEndpoints({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // The name of the network endpoint group from which you want to generate a + * // list of included network endpoints. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "healthStatus": "my_healthStatus" * // } * }, * }); @@ -135168,10 +143820,11 @@ export namespace compute_preview { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} * // } * } * @@ -135187,52 +143840,62 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Networkattachments$Setiampolicy, + listNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Networkattachments$Setiampolicy, + listNetworkEndpoints( + params?: Params$Resource$Networkendpointgroups$Listnetworkendpoints, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Networkattachments$Setiampolicy, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Networkattachments$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Networkattachments$Setiampolicy, - callback: BodyResponseCallback + listNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + listNetworkEndpoints( + callback: BodyResponseCallback + ): void; + listNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Networkattachments$Setiampolicy - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Listnetworkendpoints + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Setiampolicy; + {}) as Params$Resource$Networkendpointgroups$Listnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Setiampolicy; + params = + {} as Params$Resource$Networkendpointgroups$Listnetworkendpoints; options = {}; } @@ -135247,7 +143910,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -135255,17 +143918,19 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } @@ -135303,14 +143968,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.testIamPermissions({ + * const res = await compute.networkEndpointGroups.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Name or id of the resource for this request. * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -135341,26 +144006,26 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Networkattachments$Testiampermissions, + params: Params$Resource$Networkendpointgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Networkattachments$Testiampermissions, + params?: Params$Resource$Networkendpointgroups$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Networkattachments$Testiampermissions, + params: Params$Resource$Networkendpointgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Networkattachments$Testiampermissions, + params: Params$Resource$Networkendpointgroups$Testiampermissions, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Networkattachments$Testiampermissions, + params: Params$Resource$Networkendpointgroups$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -135368,7 +144033,7 @@ export namespace compute_preview { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Networkattachments$Testiampermissions + | Params$Resource$Networkendpointgroups$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -135384,12 +144049,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Testiampermissions; + {}) as Params$Resource$Networkendpointgroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Testiampermissions; + params = {} as Params$Resource$Networkendpointgroups$Testiampermissions; options = {}; } @@ -135404,7 +144069,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkAttachments/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -135412,8 +144077,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -135427,7 +144092,7 @@ export namespace compute_preview { } } - export interface Params$Resource$Networkattachments$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -135537,19 +144202,16 @@ export namespace compute_preview { */ serviceProjectNumber?: string; } - export interface Params$Resource$Networkattachments$Delete extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Attachnetworkendpoints extends StandardParameters { /** - * Name of the NetworkAttachment resource to delete. + * The name of the network endpoint group where you are attaching network + * endpoints to. It should comply with RFC1035. */ - networkAttachment?: string; + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; - /** - * Name of the region of this request. - */ - region?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -135564,51 +144226,108 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; + /** + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEndpointGroupsAttachEndpointsRequest; } - export interface Params$Resource$Networkattachments$Get extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Delete extends StandardParameters { /** - * Name of the NetworkAttachment resource to return. + * The name of the network endpoint group to delete. It should comply with + * RFC1035. */ - networkAttachment?: string; + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region of this request. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - region?: string; + requestId?: string; + /** + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. + */ + zone?: string; } - export interface Params$Resource$Networkattachments$Getiampolicy extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Detachnetworkendpoints extends StandardParameters { /** - * Requested IAM Policy version. + * The name of the network endpoint group where you are removing network + * endpoints. It should comply with RFC1035. */ - optionsRequestedPolicyVersion?: number; + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the region for this request. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - region?: string; + requestId?: string; /** - * Name or id of the resource for this request. + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. */ - resource?: string; + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEndpointGroupsDetachEndpointsRequest; } - export interface Params$Resource$Networkattachments$Insert extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Get extends StandardParameters { + /** + * The name of the network endpoint group. It should comply with RFC1035. + */ + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the region of this request. + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. */ - region?: string; + zone?: string; + } + export interface Params$Resource$Networkendpointgroups$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -135623,16 +144342,21 @@ export namespace compute_preview { * The request ID must be * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder */ requestId?: string; + /** + * The name of the zone where + * you want to create the network endpoint group. It should comply with + * RFC1035. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworkAttachment; + requestBody?: Schema$NetworkEndpointGroup; } - export interface Params$Resource$Networkattachments$List extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -135727,96 +144451,788 @@ export namespace compute_preview { */ project?: string; /** - * Name of the region of this request. + * The name of thezone + * where the network endpoint group is located. It should comply with RFC1035. */ - region?: string; + zone?: string; } - export interface Params$Resource$Networkattachments$Patch extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Listnetworkendpoints extends StandardParameters { /** - * Name of the NetworkAttachment resource to patch. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - networkAttachment?: string; + filter?: string; /** - * Project ID for this request. + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) */ - project?: string; + maxResults?: number; /** - * Name of the region for this request. + * The name of the network endpoint group from which you want to generate a + * list of included network endpoints. It should comply with RFC1035. */ - region?: string; + networkEndpointGroup?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - * end_interface: MixerMutationRequestBuilder + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestId?: string; + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworkAttachment; + requestBody?: Schema$NetworkEndpointGroupsListEndpointsRequest; } - export interface Params$Resource$Networkattachments$Setiampolicy extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * The name of the region for this request. + * Name or id of the resource for this request. */ - region?: string; + resource?: string; /** - * Name or id of the resource for this request. + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Networkfirewallpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Inserts an association for the specified firewall policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkFirewallPolicies.addAssociation({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Indicates whether or not to replace it if an association of the attachment + * // already exists. This is false by default, in which case an error will be + * // returned if an association already exists. + * replaceExistingAssociation: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attachmentTarget": "my_attachmentTarget", + * // "displayName": "my_displayName", + * // "firewallPolicyId": "my_firewallPolicyId", + * // "name": "my_name", + * // "priority": 0, + * // "shortName": "my_shortName" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + addAssociation( + params: Params$Resource$Networkfirewallpolicies$Addassociation, + options: StreamMethodOptions + ): Promise>; + addAssociation( + params?: Params$Resource$Networkfirewallpolicies$Addassociation, + options?: MethodOptions + ): Promise>; + addAssociation( + params: Params$Resource$Networkfirewallpolicies$Addassociation, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addAssociation( + params: Params$Resource$Networkfirewallpolicies$Addassociation, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addAssociation( + params: Params$Resource$Networkfirewallpolicies$Addassociation, + callback: BodyResponseCallback + ): void; + addAssociation(callback: BodyResponseCallback): void; + addAssociation( + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Addassociation + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Addassociation; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkfirewallpolicies$Addassociation; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/addAssociation' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Inserts a packet mirroring rule into a firewall policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkFirewallPolicies.addPacketMirroringRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * maxPriority: 'placeholder-value', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * minPriority: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + addPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, + options: StreamMethodOptions + ): Promise>; + addPacketMirroringRule( + params?: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, + options?: MethodOptions + ): Promise>; + addPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, + callback: BodyResponseCallback + ): void; + addPacketMirroringRule( + callback: BodyResponseCallback + ): void; + addPacketMirroringRule( + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/addPacketMirroringRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Inserts a rule into a firewall policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkFirewallPolicies.addRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * maxPriority: 'placeholder-value', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * minPriority: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - resource?: string; + addRule( + params: Params$Resource$Networkfirewallpolicies$Addrule, + options: StreamMethodOptions + ): Promise>; + addRule( + params?: Params$Resource$Networkfirewallpolicies$Addrule, + options?: MethodOptions + ): Promise>; + addRule( + params: Params$Resource$Networkfirewallpolicies$Addrule, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addRule( + params: Params$Resource$Networkfirewallpolicies$Addrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addRule( + params: Params$Resource$Networkfirewallpolicies$Addrule, + callback: BodyResponseCallback + ): void; + addRule(callback: BodyResponseCallback): void; + addRule( + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Addrule + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Addrule; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetPolicyRequest; - } - export interface Params$Resource$Networkattachments$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkfirewallpolicies$Addrule; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Networkedgesecurityservices { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/addRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Retrieves the list of all NetworkEdgeSecurityService resources available to - * the specified project. + * Retrieves an aggregated list of network firewall policies, listing network + * firewall policies from all applicable scopes (global and regional) and + * grouping the results per scope. * - * To prevent failure, Google recommends that you set the + * To prevent failure, it is recommended that you set the * `returnPartialSuccess` parameter to `true`. * @example * ```js @@ -135850,7 +145266,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.aggregatedList({ + * const res = await compute.networkFirewallPolicies.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -135940,7 +145356,7 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Name of the project scoping this request. + * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // The Shared VPC service project id or service project number for which @@ -135951,7 +145367,6 @@ export namespace compute_preview { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": {}, * // "kind": "my_kind", @@ -135975,61 +145390,60 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + params?: Params$Resource$Networkfirewallpolicies$Aggregatedlist, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; aggregatedList( - params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Aggregatedlist; + {}) as Params$Resource$Networkfirewallpolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkedgesecurityservices$Aggregatedlist; + params = {} as Params$Resource$Networkfirewallpolicies$Aggregatedlist; options = {}; } @@ -136044,7 +145458,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/aggregated/networkEdgeSecurityServices' + '/compute/v1/projects/{project}/aggregated/firewallPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -136057,19 +145471,19 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes the specified service. + * Copies rules to the specified firewall policy. * @example * ```js * // Before running the sample: @@ -136101,15 +145515,199 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.delete({ - * // Name of the network edge security service to delete. - * networkEdgeSecurityService: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkFirewallPolicies.cloneRules({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The firewall policy from which to copy rules. + * sourceFirewallPolicy: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cloneRules( + params: Params$Resource$Networkfirewallpolicies$Clonerules, + options: StreamMethodOptions + ): Promise>; + cloneRules( + params?: Params$Resource$Networkfirewallpolicies$Clonerules, + options?: MethodOptions + ): Promise>; + cloneRules( + params: Params$Resource$Networkfirewallpolicies$Clonerules, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cloneRules( + params: Params$Resource$Networkfirewallpolicies$Clonerules, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cloneRules( + params: Params$Resource$Networkfirewallpolicies$Clonerules, + callback: BodyResponseCallback + ): void; + cloneRules(callback: BodyResponseCallback): void; + cloneRules( + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Clonerules + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Clonerules; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkfirewallpolicies$Clonerules; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/cloneRules' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkFirewallPolicies.delete({ + * // Name of the firewall policy to delete. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -136132,6 +145730,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -136174,31 +145773,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Networkedgesecurityservices$Delete, + params: Params$Resource$Networkfirewallpolicies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Networkedgesecurityservices$Delete, + params?: Params$Resource$Networkfirewallpolicies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Networkedgesecurityservices$Delete, + params: Params$Resource$Networkfirewallpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Networkedgesecurityservices$Delete, + params: Params$Resource$Networkfirewallpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Networkedgesecurityservices$Delete, + params: Params$Resource$Networkfirewallpolicies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Delete + | Params$Resource$Networkfirewallpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -136213,12 +145812,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Delete; + {}) as Params$Resource$Networkfirewallpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkedgesecurityservices$Delete; + params = {} as Params$Resource$Networkfirewallpolicies$Delete; options = {}; } @@ -136233,7 +145832,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -136241,8 +145840,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'networkEdgeSecurityService'], - pathParams: ['networkEdgeSecurityService', 'project', 'region'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -136256,7 +145855,7 @@ export namespace compute_preview { } /** - * Gets a specified NetworkEdgeSecurityService. + * Returns the specified network firewall policy. * @example * ```js * // Before running the sample: @@ -136289,31 +145888,34 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.get({ - * // Name of the network edge security service to get. - * networkEdgeSecurityService: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkFirewallPolicies.get({ + * // Name of the firewall policy to get. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "associations": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "displayName": "my_displayName", * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "params": {}, + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policyType": "my_policyType", * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", + * // "ruleTupleCount": 0, + * // "rules": [], * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName" * // } * } * @@ -136330,55 +145932,206 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Networkedgesecurityservices$Get, + params: Params$Resource$Networkfirewallpolicies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Networkedgesecurityservices$Get, + params?: Params$Resource$Networkfirewallpolicies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Networkedgesecurityservices$Get, + params: Params$Resource$Networkfirewallpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Networkedgesecurityservices$Get, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Networkfirewallpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Networkedgesecurityservices$Get, - callback: BodyResponseCallback + params: Params$Resource$Networkfirewallpolicies$Get, + callback: BodyResponseCallback ): void; + get(callback: BodyResponseCallback): void; get( - callback: BodyResponseCallback + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkfirewallpolicies$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets an association with the specified name. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkFirewallPolicies.getAssociation({ + * // Name of the firewall policy to which the queried association belongs. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the association to get from the firewall policy. + * name: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "attachmentTarget": "my_attachmentTarget", + * // "displayName": "my_displayName", + * // "firewallPolicyId": "my_firewallPolicyId", + * // "name": "my_name", + * // "priority": 0, + * // "shortName": "my_shortName" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getAssociation( + params: Params$Resource$Networkfirewallpolicies$Getassociation, + options: StreamMethodOptions + ): Promise>; + getAssociation( + params?: Params$Resource$Networkfirewallpolicies$Getassociation, + options?: MethodOptions + ): Promise>; + getAssociation( + params: Params$Resource$Networkfirewallpolicies$Getassociation, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( + getAssociation( + params: Params$Resource$Networkfirewallpolicies$Getassociation, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAssociation( + params: Params$Resource$Networkfirewallpolicies$Getassociation, + callback: BodyResponseCallback + ): void; + getAssociation( + callback: BodyResponseCallback + ): void; + getAssociation( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Get - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Getassociation + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Get; + {}) as Params$Resource$Networkfirewallpolicies$Getassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkedgesecurityservices$Get; + params = {} as Params$Resource$Networkfirewallpolicies$Getassociation; options = {}; } @@ -136393,7 +146146,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/getAssociation' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -136401,23 +146154,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region', 'networkEdgeSecurityService'], - pathParams: ['networkEdgeSecurityService', 'project', 'region'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new service in the specified project using the data included in - * the request. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -136441,6 +146194,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -136449,80 +146203,184 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.insert({ + * const res = await compute.networkFirewallPolicies.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // If true, the request will not be committed. - * validateOnly: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "params": {}, - * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" - * // } - * }, + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Networkfirewallpolicies$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkfirewallpolicies$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/firewallPolicies/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets a packet mirroring rule of the specified priority. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkFirewallPolicies.getPacketMirroringRule({ + * // Name of the firewall policy to which the queried rule belongs. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to get from the firewall policy. + * priority: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", + * // "action": "my_action", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false * // } * } * @@ -136538,52 +146396,218 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Networkedgesecurityservices$Insert, + getPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Networkedgesecurityservices$Insert, + getPacketMirroringRule( + params?: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Networkedgesecurityservices$Insert, + ): Promise>; + getPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkedgesecurityservices$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + callback: BodyResponseCallback + ): void; + getPacketMirroringRule( + callback: BodyResponseCallback + ): void; + getPacketMirroringRule( + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/getPacketMirroringRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets a rule of the specified priority. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkFirewallPolicies.getRule({ + * // Name of the firewall policy to which the queried rule belongs. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to get from the firewall policy. + * priority: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getRule( + params: Params$Resource$Networkfirewallpolicies$Getrule, + options: StreamMethodOptions + ): Promise>; + getRule( + params?: Params$Resource$Networkfirewallpolicies$Getrule, + options?: MethodOptions + ): Promise>; + getRule( + params: Params$Resource$Networkfirewallpolicies$Getrule, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getRule( + params: Params$Resource$Networkfirewallpolicies$Getrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkedgesecurityservices$Insert, - callback: BodyResponseCallback + getRule( + params: Params$Resource$Networkfirewallpolicies$Getrule, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + getRule(callback: BodyResponseCallback): void; + getRule( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Insert - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Getrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Insert; + {}) as Params$Resource$Networkfirewallpolicies$Getrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkedgesecurityservices$Insert; + params = {} as Params$Resource$Networkfirewallpolicies$Getrule; options = {}; } @@ -136598,30 +146622,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEdgeSecurityServices' + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/getRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified policy with the data included in the request. + * Creates a new policy in the specified project using the data included in + * the request. * @example * ```js * // Before running the sample: @@ -136653,17 +146678,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.patch({ - * // Name of the network edge security service to update. - * networkEdgeSecurityService: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * paths: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the region scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -136678,24 +146696,28 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "associations": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "displayName": "my_displayName", * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", - * // "params": {}, + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policyType": "my_policyType", * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", + * // "ruleTupleCount": 0, + * // "rules": [], * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName" * // } * }, * }); @@ -136706,6 +146728,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -136747,32 +146770,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params: Params$Resource$Networkfirewallpolicies$Insert, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params?: Params$Resource$Networkfirewallpolicies$Insert, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params: Params$Resource$Networkfirewallpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params: Params$Resource$Networkfirewallpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params: Params$Resource$Networkfirewallpolicies$Insert, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Patch + | Params$Resource$Networkfirewallpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -136787,12 +146810,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Patch; + {}) as Params$Resource$Networkfirewallpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkedgesecurityservices$Patch; + params = {} as Params$Resource$Networkfirewallpolicies$Insert; options = {}; } @@ -136806,17 +146829,16 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' + rootUrl + '/compute/v1/projects/{project}/global/firewallPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'networkEdgeSecurityService'], - pathParams: ['networkEdgeSecurityService', 'project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -136828,252 +146850,9 @@ export namespace compute_preview { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Networkedgesecurityservices$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Name of the project scoping this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Networkedgesecurityservices$Delete extends StandardParameters { - /** - * Name of the network edge security service to delete. - */ - networkEdgeSecurityService?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - } - export interface Params$Resource$Networkedgesecurityservices$Get extends StandardParameters { - /** - * Name of the network edge security service to get. - */ - networkEdgeSecurityService?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - } - export interface Params$Resource$Networkedgesecurityservices$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * If true, the request will not be committed. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworkEdgeSecurityService; - } - export interface Params$Resource$Networkedgesecurityservices$Patch extends StandardParameters { - /** - * Name of the network edge security service to update. - */ - networkEdgeSecurityService?: string; - /** - * - */ - paths?: string[]; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Indicates fields to be updated as part of this request. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworkEdgeSecurityService; - } - - export class Resource$Networkendpointgroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves the list of network endpoint groups and sorts them by zone. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Lists all the policies that have been configured for the specified project. * @example * ```js * // Before running the sample: @@ -137106,7 +146885,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.aggregatedList({ + * const res = await compute.networkFirewallPolicies.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -137166,14 +146945,6 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -137199,20 +146970,15 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -137229,61 +146995,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Networkendpointgroups$Aggregatedlist, + list( + params: Params$Resource$Networkfirewallpolicies$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Networkendpointgroups$Aggregatedlist, + list( + params?: Params$Resource$Networkfirewallpolicies$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Networkendpointgroups$Aggregatedlist, + ): Promise>; + list( + params: Params$Resource$Networkfirewallpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Networkendpointgroups$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Networkendpointgroups$Aggregatedlist, - callback: BodyResponseCallback + list( + params: Params$Resource$Networkfirewallpolicies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + params: Params$Resource$Networkfirewallpolicies$List, + callback: BodyResponseCallback ): void; - aggregatedList( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Aggregatedlist; + {}) as Params$Resource$Networkfirewallpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Aggregatedlist; + params = {} as Params$Resource$Networkfirewallpolicies$List; options = {}; } @@ -137297,8 +147055,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/networkEndpointGroups' + rootUrl + '/compute/v1/projects/{project}/global/firewallPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -137311,19 +147068,17 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Attach a list of network endpoints to the specified network endpoint group. + * Patches the specified policy with the data included in the request. * @example * ```js * // Before running the sample: @@ -137355,10 +147110,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.attachNetworkEndpoints({ - * // The name of the network endpoint group where you are attaching network - * // endpoints to. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.patch({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -137376,15 +147130,28 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "networkEndpoints": [] + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "ruleTupleCount": 0, + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName" * // } * }, * }); @@ -137395,6 +147162,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -137436,34 +147204,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - attachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + patch( + params: Params$Resource$Networkfirewallpolicies$Patch, options: StreamMethodOptions ): Promise>; - attachNetworkEndpoints( - params?: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + patch( + params?: Params$Resource$Networkfirewallpolicies$Patch, options?: MethodOptions ): Promise>; - attachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + patch( + params: Params$Resource$Networkfirewallpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + patch( + params: Params$Resource$Networkfirewallpolicies$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, - callback: BodyResponseCallback - ): void; - attachNetworkEndpoints( + patch( + params: Params$Resource$Networkfirewallpolicies$Patch, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Attachnetworkendpoints + | Params$Resource$Networkfirewallpolicies$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -137478,13 +147244,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Attachnetworkendpoints; + {}) as Params$Resource$Networkfirewallpolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkendpointgroups$Attachnetworkendpoints; + params = {} as Params$Resource$Networkfirewallpolicies$Patch; options = {}; } @@ -137499,16 +147264,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -137522,10 +147287,7 @@ export namespace compute_preview { } /** - * Deletes the specified network endpoint group. The network endpoints in the - * NEG and the VM instances they belong to are not terminated when the NEG is - * deleted. Note that the NEG cannot be deleted if there are backend services - * referencing it. + * Patches a packet mirroring rule of the specified priority. * @example * ```js * // Before running the sample: @@ -137557,10 +147319,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.delete({ - * // The name of the network endpoint group to delete. It should comply with - * // RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.patchPacketMirroringRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to patch. + * priority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -137578,9 +147341,30 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false + * // } + * }, * }); * console.log(res.data); * @@ -137589,6 +147373,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -137630,32 +147415,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Networkendpointgroups$Delete, + patchPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Networkendpointgroups$Delete, + patchPacketMirroringRule( + params?: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Networkendpointgroups$Delete, + patchPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkendpointgroups$Delete, + patchPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkendpointgroups$Delete, + patchPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patchPacketMirroringRule( + callback: BodyResponseCallback + ): void; + patchPacketMirroringRule( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Delete + | Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -137670,12 +147457,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Delete; + {}) as Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Delete; + params = + {} as Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule; options = {}; } @@ -137690,16 +147478,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}' + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchPacketMirroringRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -137713,8 +147501,7 @@ export namespace compute_preview { } /** - * Detach a list of network endpoints from the specified network endpoint - * group. + * Patches a rule of the specified priority. * @example * ```js * // Before running the sample: @@ -137746,10 +147533,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.detachNetworkEndpoints({ - * // The name of the network endpoint group where you are removing network - * // endpoints. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.patchRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to patch. + * priority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -137767,15 +147555,28 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "networkEndpoints": [] + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false * // } * }, * }); @@ -137786,6 +147587,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -137827,34 +147629,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - detachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchRule( + params: Params$Resource$Networkfirewallpolicies$Patchrule, options: StreamMethodOptions ): Promise>; - detachNetworkEndpoints( - params?: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchRule( + params?: Params$Resource$Networkfirewallpolicies$Patchrule, options?: MethodOptions ): Promise>; - detachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchRule( + params: Params$Resource$Networkfirewallpolicies$Patchrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchRule( + params: Params$Resource$Networkfirewallpolicies$Patchrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, - callback: BodyResponseCallback - ): void; - detachNetworkEndpoints( + patchRule( + params: Params$Resource$Networkfirewallpolicies$Patchrule, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( + patchRule(callback: BodyResponseCallback): void; + patchRule( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Detachnetworkendpoints + | Params$Resource$Networkfirewallpolicies$Patchrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -137869,13 +147669,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Detachnetworkendpoints; + {}) as Params$Resource$Networkfirewallpolicies$Patchrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkendpointgroups$Detachnetworkendpoints; + params = {} as Params$Resource$Networkfirewallpolicies$Patchrule; options = {}; } @@ -137890,7 +147689,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -137898,8 +147697,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -137913,7 +147712,7 @@ export namespace compute_preview { } /** - * Returns the specified network endpoint group. + * Removes an association for the specified firewall policy. * @example * ```js * // Before running the sample: @@ -137937,7 +147736,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -137946,40 +147744,62 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.get({ - * // The name of the network endpoint group. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.removeAssociation({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name for the attachment that will be removed. + * name: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "serviceClassId": "my_serviceClassId", - * // "size": 0, - * // "subnetwork": "my_subnetwork", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -137996,54 +147816,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Networkendpointgroups$Get, + removeAssociation( + params: Params$Resource$Networkfirewallpolicies$Removeassociation, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Networkendpointgroups$Get, + removeAssociation( + params?: Params$Resource$Networkfirewallpolicies$Removeassociation, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkendpointgroups$Get, + ): Promise>; + removeAssociation( + params: Params$Resource$Networkfirewallpolicies$Removeassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkendpointgroups$Get, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + removeAssociation( + params: Params$Resource$Networkfirewallpolicies$Removeassociation, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkendpointgroups$Get, - callback: BodyResponseCallback + removeAssociation( + params: Params$Resource$Networkfirewallpolicies$Removeassociation, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + removeAssociation(callback: BodyResponseCallback): void; + removeAssociation( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Get - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Removeassociation + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Get; + {}) as Params$Resource$Networkfirewallpolicies$Removeassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Get; + params = + {} as Params$Resource$Networkfirewallpolicies$Removeassociation; options = {}; } @@ -138058,45 +147877,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}' + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/removeAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a network endpoint group in the specified project using the - * parameters that are included in the request. - * - * Note: Use the following APIs to manage network endpoint groups: - * - * - - * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity - * NEGs): zonal - * API - * - - * To manage NEGs with regional scope (such as regional internet NEGs, - * serverless NEGs, Private Service Connect NEGs): regional - * API - * - - * To manage NEGs with global scope (such as global internet NEGs):global - * API + * Deletes a packet mirroring rule of the specified priority. * @example * ```js * // Before running the sample: @@ -138128,7 +147932,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.insert({ + * const res = await compute.networkFirewallPolicies.removePacketMirroringRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to remove from the firewall policy. + * priority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -138146,38 +147954,6 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // you want to create the network endpoint group. It should comply with - * // RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, - * // "description": "my_description", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "serviceClassId": "my_serviceClassId", - * // "size": 0, - * // "subnetwork": "my_subnetwork", - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -138186,6 +147962,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -138227,32 +148004,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Networkendpointgroups$Insert, + removePacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Networkendpointgroups$Insert, + removePacketMirroringRule( + params?: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Networkendpointgroups$Insert, + removePacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkendpointgroups$Insert, + removePacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkendpointgroups$Insert, + removePacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + removePacketMirroringRule( + callback: BodyResponseCallback + ): void; + removePacketMirroringRule( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Insert + | Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -138267,182 +148046,139 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Insert; + {}) as Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; + params = + {} as Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule; options = {}; } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Retrieves the list of network endpoint groups that are located in the - * specified project and zone. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.networkEndpointGroups.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/removePacketMirroringRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a rule of the specified priority. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.networkFirewallPolicies.removeRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to remove from the firewall policy. + * priority: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of thezone - * // where the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -138458,54 +148194,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Networkendpointgroups$List, + removeRule( + params: Params$Resource$Networkfirewallpolicies$Removerule, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Networkendpointgroups$List, + removeRule( + params?: Params$Resource$Networkfirewallpolicies$Removerule, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Networkendpointgroups$List, + ): Promise>; + removeRule( + params: Params$Resource$Networkfirewallpolicies$Removerule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networkendpointgroups$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + removeRule( + params: Params$Resource$Networkfirewallpolicies$Removerule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networkendpointgroups$List, - callback: BodyResponseCallback + removeRule( + params: Params$Resource$Networkfirewallpolicies$Removerule, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + removeRule(callback: BodyResponseCallback): void; + removeRule( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$List - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Removerule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$List; + {}) as Params$Resource$Networkfirewallpolicies$Removerule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$List; + params = {} as Params$Resource$Networkfirewallpolicies$Removerule; options = {}; } @@ -138520,30 +148254,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups' + '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/removeRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the network endpoints in the specified network endpoint group. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -138567,7 +148302,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -138576,103 +148310,20 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.listNetworkEndpoints({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // The name of the network endpoint group from which you want to generate a - * // list of included network endpoints. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "healthStatus": "my_healthStatus" + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -138680,11 +148331,10 @@ export namespace compute_preview { * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -138700,62 +148350,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + setIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Setiampolicy, options: StreamMethodOptions ): Promise>; - listNetworkEndpoints( - params?: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + setIamPolicy( + params?: Params$Resource$Networkfirewallpolicies$Setiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + ): Promise>; + setIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Setiampolicy, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Listnetworkendpoints - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Listnetworkendpoints; + {}) as Params$Resource$Networkfirewallpolicies$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkendpointgroups$Listnetworkendpoints; + params = {} as Params$Resource$Networkfirewallpolicies$Setiampolicy; options = {}; } @@ -138770,7 +148410,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' + '/compute/v1/projects/{project}/global/firewallPolicies/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -138778,19 +148418,17 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } @@ -138828,14 +148466,12 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.testIamPermissions({ + * const res = await compute.networkFirewallPolicies.testIamPermissions({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -138866,26 +148502,26 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Networkendpointgroups$Testiampermissions, + params: Params$Resource$Networkfirewallpolicies$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Networkendpointgroups$Testiampermissions, + params?: Params$Resource$Networkfirewallpolicies$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Networkendpointgroups$Testiampermissions, + params: Params$Resource$Networkfirewallpolicies$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Networkendpointgroups$Testiampermissions, + params: Params$Resource$Networkfirewallpolicies$Testiampermissions, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Networkendpointgroups$Testiampermissions, + params: Params$Resource$Networkfirewallpolicies$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -138893,7 +148529,7 @@ export namespace compute_preview { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Testiampermissions + | Params$Resource$Networkfirewallpolicies$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -138909,12 +148545,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Testiampermissions; + {}) as Params$Resource$Networkfirewallpolicies$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Testiampermissions; + params = + {} as Params$Resource$Networkfirewallpolicies$Testiampermissions; options = {}; } @@ -138929,7 +148566,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/firewallPolicies/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -138937,8 +148574,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -138952,7 +148589,126 @@ export namespace compute_preview { } } - export interface Params$Resource$Networkendpointgroups$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Addassociation extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Indicates whether or not to replace it if an association of the attachment + * already exists. This is false by default, in which case an error will be + * returned if an association already exists. + */ + replaceExistingAssociation?: boolean; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyAssociation; + } + export interface Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + maxPriority?: number; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + minPriority?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyRule; + } + export interface Params$Resource$Networkfirewallpolicies$Addrule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + maxPriority?: number; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + minPriority?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyRule; + } + export interface Params$Resource$Networkfirewallpolicies$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -139062,12 +148818,11 @@ export namespace compute_preview { */ serviceProjectNumber?: string; } - export interface Params$Resource$Networkendpointgroups$Attachnetworkendpoints extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Clonerules extends StandardParameters { /** - * The name of the network endpoint group where you are attaching network - * endpoints to. It should comply with RFC1035. + * Name of the firewall policy to update. */ - networkEndpointGroup?: string; + firewallPolicy?: string; /** * Project ID for this request. */ @@ -139089,22 +148844,15 @@ export namespace compute_preview { */ requestId?: string; /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. - */ - zone?: string; - - /** - * Request body metadata + * The firewall policy from which to copy rules. */ - requestBody?: Schema$NetworkEndpointGroupsAttachEndpointsRequest; + sourceFirewallPolicy?: string; } - export interface Params$Resource$Networkendpointgroups$Delete extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Delete extends StandardParameters { /** - * The name of the network endpoint group to delete. It should comply with - * RFC1035. + * Name of the firewall policy to delete. */ - networkEndpointGroup?: string; + firewallPolicy?: string; /** * Project ID for this request. */ @@ -139125,65 +148873,74 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Get extends StandardParameters { /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. + * Name of the firewall policy to get. */ - zone?: string; + firewallPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Networkendpointgroups$Detachnetworkendpoints extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Getassociation extends StandardParameters { /** - * The name of the network endpoint group where you are removing network - * endpoints. It should comply with RFC1035. + * Name of the firewall policy to which the queried association belongs. */ - networkEndpointGroup?: string; + firewallPolicy?: string; + /** + * The name of the association to get from the firewall policy. + */ + name?: string; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Getiampolicy extends StandardParameters { /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Requested IAM Policy version. */ - requestId?: string; + optionsRequestedPolicyVersion?: number; /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. + * Project ID for this request. */ - zone?: string; - + project?: string; /** - * Request body metadata + * Name or id of the resource for this request. */ - requestBody?: Schema$NetworkEndpointGroupsDetachEndpointsRequest; + resource?: string; } - export interface Params$Resource$Networkendpointgroups$Get extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule extends StandardParameters { /** - * The name of the network endpoint group. It should comply with RFC1035. + * Name of the firewall policy to which the queried rule belongs. */ - networkEndpointGroup?: string; + firewallPolicy?: string; + /** + * The priority of the rule to get from the firewall policy. + */ + priority?: number; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Getrule extends StandardParameters { /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. + * Name of the firewall policy to which the queried rule belongs. */ - zone?: string; + firewallPolicy?: string; + /** + * The priority of the rule to get from the firewall policy. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Networkendpointgroups$Insert extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -139204,19 +148961,13 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone where - * you want to create the network endpoint group. It should comply with - * RFC1035. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworkEndpointGroup; + requestBody?: Schema$FirewallPolicy; } - export interface Params$Resource$Networkendpointgroups$List extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -139310,568 +149061,237 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Patch extends StandardParameters { /** - * The name of thezone - * where the network endpoint group is located. It should comply with RFC1035. + * Name of the firewall policy to update. */ - zone?: string; - } - export interface Params$Resource$Networkendpointgroups$Listnetworkendpoints extends StandardParameters { + firewallPolicy?: string; /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. + * Project ID for this request. */ - filter?: string; + project?: string; /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - maxResults?: number; + requestId?: string; + /** - * The name of the network endpoint group from which you want to generate a - * list of included network endpoints. It should comply with RFC1035. + * Request body metadata */ - networkEndpointGroup?: string; + requestBody?: Schema$FirewallPolicy; + } + export interface Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule extends StandardParameters { /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * Name of the firewall policy to update. */ - orderBy?: string; + firewallPolicy?: string; /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * The priority of the rule to patch. */ - pageToken?: string; + priority?: number; /** * Project ID for this request. */ project?: string; /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - zone?: string; + requestId?: string; /** * Request body metadata */ - requestBody?: Schema$NetworkEndpointGroupsListEndpointsRequest; + requestBody?: Schema$FirewallPolicyRule; } - export interface Params$Resource$Networkendpointgroups$Testiampermissions extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Patchrule extends StandardParameters { /** - * Project ID for this request. + * Name of the firewall policy to update. */ - project?: string; + firewallPolicy?: string; /** - * Name or id of the resource for this request. + * The priority of the rule to patch. */ - resource?: string; + priority?: number; /** - * The name of the zone for this request. + * Project ID for this request. */ - zone?: string; + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$FirewallPolicyRule; } - - export class Resource$Networkfirewallpolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - + export interface Params$Resource$Networkfirewallpolicies$Removeassociation extends StandardParameters { /** - * Inserts an association for the specified firewall policy. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.networkFirewallPolicies.addAssociation({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Indicates whether or not to replace it if an association of the attachment - * // already exists. This is false by default, in which case an error will be - * // returned if an association already exists. - * replaceExistingAssociation: 'placeholder-value', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "attachmentTarget": "my_attachmentTarget", - * // "displayName": "my_displayName", - * // "firewallPolicyId": "my_firewallPolicyId", - * // "name": "my_name", - * // "priority": 0, - * // "shortName": "my_shortName" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * Name of the firewall policy to update. */ - addAssociation( - params: Params$Resource$Networkfirewallpolicies$Addassociation, - options: StreamMethodOptions - ): Promise>; - addAssociation( - params?: Params$Resource$Networkfirewallpolicies$Addassociation, - options?: MethodOptions - ): Promise>; - addAssociation( - params: Params$Resource$Networkfirewallpolicies$Addassociation, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addAssociation( - params: Params$Resource$Networkfirewallpolicies$Addassociation, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addAssociation( - params: Params$Resource$Networkfirewallpolicies$Addassociation, - callback: BodyResponseCallback - ): void; - addAssociation(callback: BodyResponseCallback): void; - addAssociation( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Addassociation - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Addassociation; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Addassociation; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/addAssociation' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + firewallPolicy?: string; /** - * Inserts a packet mirroring rule into a firewall policy. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * Name for the attachment that will be removed. + */ + name?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Do the magic - * const res = await compute.networkFirewallPolicies.addPacketMirroringRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * maxPriority: 'placeholder-value', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * minPriority: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false - * // } - * }, - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * The priority of the rule to remove from the firewall policy. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Removerule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * The priority of the rule to remove from the firewall policy. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * ``` + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - addPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - options: StreamMethodOptions - ): Promise>; - addPacketMirroringRule( - params?: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - options?: MethodOptions - ): Promise>; - addPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - callback: BodyResponseCallback - ): void; - addPacketMirroringRule( - callback: BodyResponseCallback - ): void; - addPacketMirroringRule( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule; - let options = (optionsOrCallback || {}) as MethodOptions; + requestId?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Networkfirewallpolicies$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/addPacketMirroringRule' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Networkprofiles { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Inserts a rule into a firewall policy. + * Returns the specified network profile. * @example * ```js * // Before running the sample: @@ -139895,6 +149315,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -139903,90 +149324,27 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.addRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * maxPriority: 'placeholder-value', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * minPriority: 'placeholder-value', + * const res = await compute.networkProfiles.get({ + * // Name of the network profile to return. + * networkProfile: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "features": {}, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", + * // "location": {}, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "profileType": {}, * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "selfLinkWithId": "my_selfLinkWithId" * // } * } * @@ -140002,52 +149360,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addRule( - params: Params$Resource$Networkfirewallpolicies$Addrule, + get( + params: Params$Resource$Networkprofiles$Get, options: StreamMethodOptions ): Promise>; - addRule( - params?: Params$Resource$Networkfirewallpolicies$Addrule, + get( + params?: Params$Resource$Networkprofiles$Get, options?: MethodOptions - ): Promise>; - addRule( - params: Params$Resource$Networkfirewallpolicies$Addrule, + ): Promise>; + get( + params: Params$Resource$Networkprofiles$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Networkfirewallpolicies$Addrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Networkprofiles$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Networkfirewallpolicies$Addrule, - callback: BodyResponseCallback + get( + params: Params$Resource$Networkprofiles$Get, + callback: BodyResponseCallback ): void; - addRule(callback: BodyResponseCallback): void; - addRule( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Addrule - | BodyResponseCallback + | Params$Resource$Networkprofiles$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Addrule; + {}) as Params$Resource$Networkprofiles$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Addrule; + params = {} as Params$Resource$Networkprofiles$Get; options = {}; } @@ -140062,35 +149421,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/addRule' + '/compute/v1/projects/{project}/global/networkProfiles/{networkProfile}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'networkProfile'], + pathParams: ['networkProfile', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves an aggregated list of network firewall policies, listing network - * firewall policies from all applicable scopes (global and regional) and - * grouping the results per scope. - * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Retrieves a list of network profiles available to the specified + * project. * @example * ```js * // Before running the sample: @@ -140123,7 +149478,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.aggregatedList({ + * const res = await compute.networkProfiles.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -140183,14 +149538,6 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -140216,16 +149563,14 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", @@ -140246,61 +149591,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + list( + params: Params$Resource$Networkprofiles$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + list( + params?: Params$Resource$Networkprofiles$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + ): Promise>; + list( + params: Params$Resource$Networkprofiles$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + list( + params: Params$Resource$Networkprofiles$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, - callback: BodyResponseCallback + list( + params: Params$Resource$Networkprofiles$List, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - aggregatedList( + list( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkprofiles$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Aggregatedlist; + {}) as Params$Resource$Networkprofiles$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Aggregatedlist; + params = {} as Params$Resource$Networkprofiles$List; options = {}; } @@ -140314,8 +149655,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/firewallPolicies' + rootUrl + '/compute/v1/projects/{project}/global/networkProfiles' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -140328,19 +149668,130 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Networkprofiles$Get extends StandardParameters { /** - * Copies rules to the specified firewall policy. + * Name of the network profile to return. + */ + networkProfile?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Networkprofiles$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + } + + export class Resource$Networks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Adds a peering to the specified network. * @example * ```js * // Before running the sample: @@ -140372,9 +149823,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.cloneRules({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networks.addPeering({ + * // Name of the network resource to add peering to. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -140392,8 +149843,17 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The firewall policy from which to copy rules. - * sourceFirewallPolicy: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "autoCreateRoutes": false, + * // "name": "my_name", + * // "networkPeering": {}, + * // "peerNetwork": "my_peerNetwork" + * // } + * }, * }); * console.log(res.data); * @@ -140402,6 +149862,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -140443,32 +149904,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - cloneRules( - params: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params: Params$Resource$Networks$Addpeering, options: StreamMethodOptions ): Promise>; - cloneRules( - params?: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params?: Params$Resource$Networks$Addpeering, options?: MethodOptions ): Promise>; - cloneRules( - params: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params: Params$Resource$Networks$Addpeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cloneRules( - params: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params: Params$Resource$Networks$Addpeering, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cloneRules( - params: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params: Params$Resource$Networks$Addpeering, callback: BodyResponseCallback ): void; - cloneRules(callback: BodyResponseCallback): void; - cloneRules( + addPeering(callback: BodyResponseCallback): void; + addPeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Clonerules + | Params$Resource$Networks$Addpeering | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -140483,12 +149944,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Clonerules; + {}) as Params$Resource$Networks$Addpeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Clonerules; + params = {} as Params$Resource$Networks$Addpeering; options = {}; } @@ -140503,7 +149964,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/cloneRules' + '/compute/v1/projects/{project}/global/networks/{network}/addPeering' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -140511,8 +149972,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -140526,7 +149987,9 @@ export namespace compute_preview { } /** - * Deletes the specified policy. + * Cancel requests to remove a peering from the specified network. Applicable + * only for PeeringConnection with update_strategy=CONSENSUS. Cancels a + * request to remove a peering from the specified network. * @example * ```js * // Before running the sample: @@ -140558,9 +150021,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.delete({ - * // Name of the firewall policy to delete. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networks.cancelRequestRemovePeering({ + * // Name of the network resource to remove peering from. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -140578,6 +150041,14 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name" + * // } + * }, * }); * console.log(res.data); * @@ -140586,342 +150057,33 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, * // "getVersionOperationMetadata": {}, * // "httpErrorMessage": "my_httpErrorMessage", * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - delete( - params: Params$Resource$Networkfirewallpolicies$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Networkfirewallpolicies$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Networkfirewallpolicies$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Networkfirewallpolicies$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Networkfirewallpolicies$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the specified network firewall policy. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.networkFirewallPolicies.get({ - * // Name of the firewall policy to get. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policyType": "my_policyType", - * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - get( - params: Params$Resource$Networkfirewallpolicies$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Networkfirewallpolicies$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkfirewallpolicies$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networkfirewallpolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networkfirewallpolicies$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets an association with the specified name. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.networkFirewallPolicies.getAssociation({ - * // Name of the firewall policy to which the queried association belongs. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the association to get from the firewall policy. - * name: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "attachmentTarget": "my_attachmentTarget", - * // "displayName": "my_displayName", - * // "firewallPolicyId": "my_firewallPolicyId", + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", * // "name": "my_name", - * // "priority": 0, - * // "shortName": "my_shortName" + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -140937,56 +150099,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getAssociation( - params: Params$Resource$Networkfirewallpolicies$Getassociation, + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, options: StreamMethodOptions ): Promise>; - getAssociation( - params?: Params$Resource$Networkfirewallpolicies$Getassociation, + cancelRequestRemovePeering( + params?: Params$Resource$Networks$Cancelrequestremovepeering, options?: MethodOptions - ): Promise>; - getAssociation( - params: Params$Resource$Networkfirewallpolicies$Getassociation, + ): Promise>; + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getAssociation( - params: Params$Resource$Networkfirewallpolicies$Getassociation, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getAssociation( - params: Params$Resource$Networkfirewallpolicies$Getassociation, - callback: BodyResponseCallback + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, + callback: BodyResponseCallback ): void; - getAssociation( - callback: BodyResponseCallback + cancelRequestRemovePeering( + callback: BodyResponseCallback ): void; - getAssociation( + cancelRequestRemovePeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Getassociation - | BodyResponseCallback + | Params$Resource$Networks$Cancelrequestremovepeering + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Getassociation; + {}) as Params$Resource$Networks$Cancelrequestremovepeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Getassociation; + params = {} as Params$Resource$Networks$Cancelrequestremovepeering; options = {}; } @@ -141001,31 +150161,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/getAssociation' + '/compute/v1/projects/{project}/global/networks/{network}/cancelRequestRemovePeering' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Deletes the specified network. * @example * ```js * // Before running the sample: @@ -141049,7 +150208,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -141058,23 +150216,61 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.networks.delete({ + * // Name of the network to delete. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -141090,52 +150286,51 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + delete( + params: Params$Resource$Networks$Delete, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Networkfirewallpolicies$Getiampolicy, + delete( + params?: Params$Resource$Networks$Delete, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + ): Promise>; + delete( + params: Params$Resource$Networks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networks$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Getiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networks$Delete, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Getiampolicy - | BodyResponseCallback + | Params$Resource$Networks$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Getiampolicy; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Getiampolicy; + params = {} as Params$Resource$Networks$Delete; options = {}; } @@ -141150,30 +150345,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{resource}/getIamPolicy' + '/compute/v1/projects/{project}/global/networks/{network}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a packet mirroring rule of the specified priority. + * Returns the specified network. * @example * ```js * // Before running the sample: @@ -141206,11 +150401,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.getPacketMirroringRule({ - * // Name of the firewall policy to which the queried rule belongs. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to get from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.networks.get({ + * // Name of the network to return. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -141219,23 +150412,26 @@ export namespace compute_preview { * * // Example response * // { - * // "action": "my_action", + * // "IPv4Range": "my_IPv4Range", + * // "autoCreateSubnetworks": false, + * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, + * // "enableUlaInternalIpv6": false, + * // "firewallPolicy": "my_firewallPolicy", + * // "gatewayIPv4": "my_gatewayIPv4", + * // "id": "my_id", + * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false + * // "mtu": 0, + * // "name": "my_name", + * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", + * // "networkProfile": "my_networkProfile", + * // "params": {}, + * // "peerings": [], + * // "routingConfig": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] * // } * } * @@ -141251,56 +150447,51 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + get( + params: Params$Resource$Networks$Get, options: StreamMethodOptions ): Promise>; - getPacketMirroringRule( - params?: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + get( + params?: Params$Resource$Networks$Get, options?: MethodOptions - ): Promise>; - getPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + ): Promise>; + get( + params: Params$Resource$Networks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, - callback: BodyResponseCallback + get( + params: Params$Resource$Networks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getPacketMirroringRule( - callback: BodyResponseCallback + get( + params: Params$Resource$Networks$Get, + callback: BodyResponseCallback ): void; - getPacketMirroringRule( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule - | BodyResponseCallback + | Params$Resource$Networks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule; + params = {} as Params$Resource$Networks$Get; options = {}; } @@ -141315,7 +150506,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/getPacketMirroringRule' + '/compute/v1/projects/{project}/global/networks/{network}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -141323,22 +150514,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a rule of the specified priority. + * Returns the effective firewalls on a given network. * @example * ```js * // Before running the sample: @@ -141371,11 +150562,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.getRule({ - * // Name of the firewall policy to which the queried rule belongs. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to get from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.networks.getEffectiveFirewalls({ + * // Name of the network for this request. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -141384,23 +150573,8 @@ export namespace compute_preview { * * // Example response * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false + * // "firewallPolicys": [], + * // "firewalls": [] * // } * } * @@ -141416,53 +150590,61 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getRule( - params: Params$Resource$Networkfirewallpolicies$Getrule, + getEffectiveFirewalls( + params: Params$Resource$Networks$Geteffectivefirewalls, options: StreamMethodOptions ): Promise>; - getRule( - params?: Params$Resource$Networkfirewallpolicies$Getrule, + getEffectiveFirewalls( + params?: Params$Resource$Networks$Geteffectivefirewalls, options?: MethodOptions - ): Promise>; - getRule( - params: Params$Resource$Networkfirewallpolicies$Getrule, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getEffectiveFirewalls( + params: Params$Resource$Networks$Geteffectivefirewalls, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Networkfirewallpolicies$Getrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getEffectiveFirewalls( + params: Params$Resource$Networks$Geteffectivefirewalls, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Networkfirewallpolicies$Getrule, - callback: BodyResponseCallback + getEffectiveFirewalls( + params: Params$Resource$Networks$Geteffectivefirewalls, + callback: BodyResponseCallback ): void; - getRule(callback: BodyResponseCallback): void; - getRule( + getEffectiveFirewalls( + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Getrule - | BodyResponseCallback + | Params$Resource$Networks$Geteffectivefirewalls + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Getrule; + {}) as Params$Resource$Networks$Geteffectivefirewalls; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Getrule; + params = {} as Params$Resource$Networks$Geteffectivefirewalls; options = {}; } @@ -141477,7 +150659,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/getRule' + '/compute/v1/projects/{project}/global/networks/{network}/getEffectiveFirewalls' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -141485,23 +150667,25 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates a new policy in the specified project using the data included in - * the request. + * Creates a network in the specified project using the data included + * in the request. * @example * ```js * // Before running the sample: @@ -141533,7 +150717,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.insert({ + * const res = await compute.networks.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -141556,23 +150740,26 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "associations": [], + * // "IPv4Range": "my_IPv4Range", + * // "autoCreateSubnetworks": false, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", + * // "enableUlaInternalIpv6": false, + * // "firewallPolicy": "my_firewallPolicy", + * // "gatewayIPv4": "my_gatewayIPv4", * // "id": "my_id", + * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", + * // "mtu": 0, * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policyType": "my_policyType", - * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], + * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", + * // "networkProfile": "my_networkProfile", + * // "params": {}, + * // "peerings": [], + * // "routingConfig": {}, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName" + * // "subnetworks": [] * // } * }, * }); @@ -141583,6 +150770,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -141625,31 +150813,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Networkfirewallpolicies$Insert, + params: Params$Resource$Networks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Networkfirewallpolicies$Insert, + params?: Params$Resource$Networks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Networkfirewallpolicies$Insert, + params: Params$Resource$Networks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Networkfirewallpolicies$Insert, + params: Params$Resource$Networks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Networkfirewallpolicies$Insert, + params: Params$Resource$Networks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Insert + | Params$Resource$Networks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -141663,13 +150851,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Insert; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Insert; + params = {} as Params$Resource$Networks$Insert; options = {}; } @@ -141683,7 +150870,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/firewallPolicies' + rootUrl + '/compute/v1/projects/{project}/global/networks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -141706,7 +150893,7 @@ export namespace compute_preview { } /** - * Lists all the policies that have been configured for the specified project. + * Retrieves the list of networks available to the specified project. * @example * ```js * // Before running the sample: @@ -141739,7 +150926,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.list({ + * const res = await compute.networks.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -141833,6 +151020,7 @@ export namespace compute_preview { * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", * // "warning": {} * // } * } @@ -141850,52 +151038,51 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Networkfirewallpolicies$List, + params: Params$Resource$Networks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Networkfirewallpolicies$List, + params?: Params$Resource$Networks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Networkfirewallpolicies$List, + params: Params$Resource$Networks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Networkfirewallpolicies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Networks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Networkfirewallpolicies$List, - callback: BodyResponseCallback + params: Params$Resource$Networks$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$List - | BodyResponseCallback + | Params$Resource$Networks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$List; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$List; + params = {} as Params$Resource$Networks$List; options = {}; } @@ -141909,7 +151096,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/firewallPolicies' + rootUrl + '/compute/v1/projects/{project}/global/networks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -141922,17 +151109,17 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified policy with the data included in the request. + * Lists the peering routes exchanged over peering connection. * @example * ```js * // Before running the sample: @@ -141956,6 +151143,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -141964,84 +151152,111 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.patch({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networks.listPeeringRoutes({ + * // The direction of the exchanged routes. + * direction: 'placeholder-value', + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Name of the network for this request. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // The response will show routes exchanged over the given peering connection. + * peeringName: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policyType": "my_policyType", - * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName" - * // } - * }, + * // The region of the request. The response will include all subnet routes, + * // static routes and dynamic routes in the region. + * region: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -142057,52 +151272,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Networkfirewallpolicies$Patch, + listPeeringRoutes( + params: Params$Resource$Networks$Listpeeringroutes, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Networkfirewallpolicies$Patch, + listPeeringRoutes( + params?: Params$Resource$Networks$Listpeeringroutes, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Networkfirewallpolicies$Patch, + ): Promise>; + listPeeringRoutes( + params: Params$Resource$Networks$Listpeeringroutes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkfirewallpolicies$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listPeeringRoutes( + params: Params$Resource$Networks$Listpeeringroutes, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkfirewallpolicies$Patch, - callback: BodyResponseCallback + listPeeringRoutes( + params: Params$Resource$Networks$Listpeeringroutes, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + listPeeringRoutes( + callback: BodyResponseCallback + ): void; + listPeeringRoutes( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Patch - | BodyResponseCallback + | Params$Resource$Networks$Listpeeringroutes + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Patch; + {}) as Params$Resource$Networks$Listpeeringroutes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Patch; + params = {} as Params$Resource$Networks$Listpeeringroutes; options = {}; } @@ -142117,30 +151336,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}' + '/compute/v1/projects/{project}/global/networks/{network}/listPeeringRoutes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches a packet mirroring rule of the specified priority. + * Patches the specified network with the data included in the request. + * Only routingConfig can be modified. * @example * ```js * // Before running the sample: @@ -142172,11 +151392,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.patchPacketMirroringRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to patch. - * priority: 'placeholder-value', + * const res = await compute.networks.patch({ + * // Name of the network to update. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -142199,23 +151417,26 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "action": "my_action", + * // "IPv4Range": "my_IPv4Range", + * // "autoCreateSubnetworks": false, + * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, + * // "enableUlaInternalIpv6": false, + * // "firewallPolicy": "my_firewallPolicy", + * // "gatewayIPv4": "my_gatewayIPv4", + * // "id": "my_id", + * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false + * // "mtu": 0, + * // "name": "my_name", + * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", + * // "networkProfile": "my_networkProfile", + * // "params": {}, + * // "peerings": [], + * // "routingConfig": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] * // } * }, * }); @@ -142226,6 +151447,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -142267,34 +151489,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, + patch( + params: Params$Resource$Networks$Patch, options: StreamMethodOptions ): Promise>; - patchPacketMirroringRule( - params?: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, + patch( + params?: Params$Resource$Networks$Patch, options?: MethodOptions ): Promise>; - patchPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, + patch( + params: Params$Resource$Networks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, + patch( + params: Params$Resource$Networks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, - callback: BodyResponseCallback - ): void; - patchPacketMirroringRule( + patch( + params: Params$Resource$Networks$Patch, callback: BodyResponseCallback ): void; - patchPacketMirroringRule( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule + | Params$Resource$Networks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -142308,14 +151528,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule; + params = {} as Params$Resource$Networks$Patch; options = {}; } @@ -142330,16 +151548,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchPacketMirroringRule' + '/compute/v1/projects/{project}/global/networks/{network}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -142353,7 +151571,7 @@ export namespace compute_preview { } /** - * Patches a rule of the specified priority. + * Removes a peering from the specified network. * @example * ```js * // Before running the sample: @@ -142385,11 +151603,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.patchRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to patch. - * priority: 'placeholder-value', + * const res = await compute.networks.removePeering({ + * // Name of the network resource to remove peering from. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -142412,23 +151628,7 @@ export namespace compute_preview { * requestBody: { * // request body parameters * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false + * // "name": "my_name" * // } * }, * }); @@ -142439,6 +151639,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -142480,218 +151681,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchRule( - params: Params$Resource$Networkfirewallpolicies$Patchrule, - options: StreamMethodOptions - ): Promise>; - patchRule( - params?: Params$Resource$Networkfirewallpolicies$Patchrule, - options?: MethodOptions - ): Promise>; - patchRule( - params: Params$Resource$Networkfirewallpolicies$Patchrule, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patchRule( - params: Params$Resource$Networkfirewallpolicies$Patchrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patchRule( - params: Params$Resource$Networkfirewallpolicies$Patchrule, - callback: BodyResponseCallback - ): void; - patchRule(callback: BodyResponseCallback): void; - patchRule( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Patchrule - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Patchrule; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Patchrule; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchRule' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Removes an association for the specified firewall policy. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.networkFirewallPolicies.removeAssociation({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Name for the attachment that will be removed. - * name: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - removeAssociation( - params: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params: Params$Resource$Networks$Removepeering, options: StreamMethodOptions ): Promise>; - removeAssociation( - params?: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params?: Params$Resource$Networks$Removepeering, options?: MethodOptions ): Promise>; - removeAssociation( - params: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params: Params$Resource$Networks$Removepeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params: Params$Resource$Networks$Removepeering, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params: Params$Resource$Networks$Removepeering, callback: BodyResponseCallback ): void; - removeAssociation(callback: BodyResponseCallback): void; - removeAssociation( + removePeering(callback: BodyResponseCallback): void; + removePeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Removeassociation + | Params$Resource$Networks$Removepeering | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -142706,13 +151721,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Removeassociation; + {}) as Params$Resource$Networks$Removepeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Removeassociation; + params = {} as Params$Resource$Networks$Removepeering; options = {}; } @@ -142727,7 +151741,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/removeAssociation' + '/compute/v1/projects/{project}/global/networks/{network}/removePeering' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -142735,8 +151749,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -142750,7 +151764,8 @@ export namespace compute_preview { } /** - * Deletes a packet mirroring rule of the specified priority. + * Requests to remove a peering from the specified network. Applicable only + * for PeeringConnection with update_strategy=CONSENSUS. * @example * ```js * // Before running the sample: @@ -142782,11 +151797,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.removePacketMirroringRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to remove from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.networks.requestRemovePeering({ + * // Name of the network resource to remove peering from. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -142804,6 +151817,14 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name" + * // } + * }, * }); * console.log(res.data); * @@ -142812,6 +151833,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -142853,34 +151875,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removePacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params: Params$Resource$Networks$Requestremovepeering, options: StreamMethodOptions ): Promise>; - removePacketMirroringRule( - params?: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params?: Params$Resource$Networks$Requestremovepeering, options?: MethodOptions ): Promise>; - removePacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params: Params$Resource$Networks$Requestremovepeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removePacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params: Params$Resource$Networks$Requestremovepeering, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removePacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params: Params$Resource$Networks$Requestremovepeering, callback: BodyResponseCallback ): void; - removePacketMirroringRule( + requestRemovePeering( callback: BodyResponseCallback ): void; - removePacketMirroringRule( + requestRemovePeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule + | Params$Resource$Networks$Requestremovepeering | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -142895,13 +151917,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule; + {}) as Params$Resource$Networks$Requestremovepeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule; + params = {} as Params$Resource$Networks$Requestremovepeering; options = {}; } @@ -142916,7 +151937,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/removePacketMirroringRule' + '/compute/v1/projects/{project}/global/networks/{network}/requestRemovePeering' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -142924,8 +151945,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -142939,7 +151960,7 @@ export namespace compute_preview { } /** - * Deletes a rule of the specified priority. + * Switches the network mode from auto subnet mode to custom subnet mode. * @example * ```js * // Before running the sample: @@ -142971,11 +151992,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.removeRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to remove from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.networks.switchToCustomMode({ + * // Name of the network to be updated. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -143001,6 +152020,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -143042,32 +152062,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeRule( - params: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params: Params$Resource$Networks$Switchtocustommode, options: StreamMethodOptions ): Promise>; - removeRule( - params?: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params?: Params$Resource$Networks$Switchtocustommode, options?: MethodOptions ): Promise>; - removeRule( - params: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params: Params$Resource$Networks$Switchtocustommode, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params: Params$Resource$Networks$Switchtocustommode, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params: Params$Resource$Networks$Switchtocustommode, callback: BodyResponseCallback ): void; - removeRule(callback: BodyResponseCallback): void; - removeRule( + switchToCustomMode(callback: BodyResponseCallback): void; + switchToCustomMode( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Removerule + | Params$Resource$Networks$Switchtocustommode | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -143082,12 +152102,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Removerule; + {}) as Params$Resource$Networks$Switchtocustommode; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Removerule; + params = {} as Params$Resource$Networks$Switchtocustommode; options = {}; } @@ -143102,7 +152122,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{firewallPolicy}/removeRule' + '/compute/v1/projects/{project}/global/networks/{network}/switchToCustomMode' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -143110,8 +152130,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -143125,8 +152145,9 @@ export namespace compute_preview { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Updates the network profile of the specified network. + * Currently only the following operations are supported: + * - Removing a Regionally Bound Network Profile * @example * ```js * // Before running the sample: @@ -143158,20 +152179,33 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.setIamPolicy({ + * const res = await compute.networks.updateNetworkProfile({ + * // Name of the network resource to update the network profile for. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "clearNetworkProfile": false, + * // "networkProfile": "my_networkProfile" * // } * }, * }); @@ -143179,10 +152213,36 @@ export namespace compute_preview { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -143198,52 +152258,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Setiampolicy, + updateNetworkProfile( + params: Params$Resource$Networks$Updatenetworkprofile, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Networkfirewallpolicies$Setiampolicy, + updateNetworkProfile( + params?: Params$Resource$Networks$Updatenetworkprofile, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Setiampolicy, + ): Promise>; + updateNetworkProfile( + params: Params$Resource$Networks$Updatenetworkprofile, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + updateNetworkProfile( + params: Params$Resource$Networks$Updatenetworkprofile, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Setiampolicy, - callback: BodyResponseCallback + updateNetworkProfile( + params: Params$Resource$Networks$Updatenetworkprofile, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + updateNetworkProfile( + callback: BodyResponseCallback + ): void; + updateNetworkProfile( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Setiampolicy - | BodyResponseCallback + | Params$Resource$Networks$Updatenetworkprofile + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Setiampolicy; + {}) as Params$Resource$Networks$Updatenetworkprofile; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Setiampolicy; + params = {} as Params$Resource$Networks$Updatenetworkprofile; options = {}; } @@ -143258,7 +152320,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{resource}/setIamPolicy' + '/compute/v1/projects/{project}/global/networks/{network}/updateNetworkProfile' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -143266,22 +152328,24 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Updates the specified network peering with the data included in the + * request. You can only modify the NetworkPeering.export_custom_routes field + * and the NetworkPeering.import_custom_routes field. * @example * ```js * // Before running the sample: @@ -143305,7 +152369,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -143314,18 +152377,32 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.testIamPermissions({ + * const res = await compute.networks.updatePeering({ + * // Name of the network resource which the updated peering is belonging to. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "networkPeering": {} * // } * }, * }); @@ -143333,7 +152410,36 @@ export namespace compute_preview { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -143349,57 +152455,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Networkfirewallpolicies$Testiampermissions, + updatePeering( + params: Params$Resource$Networks$Updatepeering, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Networkfirewallpolicies$Testiampermissions, + updatePeering( + params?: Params$Resource$Networks$Updatepeering, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Networkfirewallpolicies$Testiampermissions, + ): Promise>; + updatePeering( + params: Params$Resource$Networks$Updatepeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Networkfirewallpolicies$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Networkfirewallpolicies$Testiampermissions, - callback: BodyResponseCallback + updatePeering( + params: Params$Resource$Networks$Updatepeering, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + updatePeering( + params: Params$Resource$Networks$Updatepeering, + callback: BodyResponseCallback ): void; - testIamPermissions( + updatePeering(callback: BodyResponseCallback): void; + updatePeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Testiampermissions - | BodyResponseCallback + | Params$Resource$Networks$Updatepeering + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Testiampermissions; + {}) as Params$Resource$Networks$Updatepeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Testiampermissions; + params = {} as Params$Resource$Networks$Updatepeering; options = {}; } @@ -143414,44 +152515,38 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/firewallPolicies/{resource}/testIamPermissions' + '/compute/v1/projects/{project}/global/networks/{network}/updatePeering' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Networkfirewallpolicies$Addassociation extends StandardParameters { + export interface Params$Resource$Networks$Addpeering extends StandardParameters { /** - * Name of the firewall policy to update. + * Name of the network resource to add peering to. */ - firewallPolicy?: string; + network?: string; /** * Project ID for this request. */ project?: string; - /** - * Indicates whether or not to replace it if an association of the attachment - * already exists. This is false by default, in which case an error will be - * returned if an association already exists. - */ - replaceExistingAssociation?: boolean; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -143472,23 +152567,44 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$FirewallPolicyAssociation; + requestBody?: Schema$NetworksAddPeeringRequest; } - export interface Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule extends StandardParameters { + export interface Params$Resource$Networks$Cancelrequestremovepeering extends StandardParameters { /** - * Name of the firewall policy to update. + * Name of the network resource to remove peering from. */ - firewallPolicy?: string; + network?: string; /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. + * Project ID for this request. */ - maxPriority?: number; + project?: string; /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - minPriority?: number; + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworksCancelRequestRemovePeeringRequest; + } + export interface Params$Resource$Networks$Delete extends StandardParameters { + /** + * Name of the network to delete. + */ + network?: string; /** * Project ID for this request. */ @@ -143509,27 +152625,28 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - + } + export interface Params$Resource$Networks$Get extends StandardParameters { /** - * Request body metadata + * Name of the network to return. */ - requestBody?: Schema$FirewallPolicyRule; - } - export interface Params$Resource$Networkfirewallpolicies$Addrule extends StandardParameters { + network?: string; /** - * Name of the firewall policy to update. + * Project ID for this request. */ - firewallPolicy?: string; + project?: string; + } + export interface Params$Resource$Networks$Geteffectivefirewalls extends StandardParameters { /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. + * Name of the network for this request. */ - maxPriority?: number; + network?: string; /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. + * Project ID for this request. */ - minPriority?: number; + project?: string; + } + export interface Params$Resource$Networks$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -143554,9 +152671,9 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$FirewallPolicyRule; + requestBody?: Schema$Network; } - export interface Params$Resource$Networkfirewallpolicies$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Networks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -143618,16 +152735,6 @@ export namespace compute_preview { * expressions. */ filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -143660,162 +152767,12 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Clonerules extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The firewall policy from which to copy rules. - */ - sourceFirewallPolicy?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Delete extends StandardParameters { - /** - * Name of the firewall policy to delete. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Get extends StandardParameters { - /** - * Name of the firewall policy to get. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Getassociation extends StandardParameters { - /** - * Name of the firewall policy to which the queried association belongs. - */ - firewallPolicy?: string; - /** - * The name of the association to get from the firewall policy. - */ - name?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule extends StandardParameters { - /** - * Name of the firewall policy to which the queried rule belongs. - */ - firewallPolicy?: string; - /** - * The priority of the rule to get from the firewall policy. - */ - priority?: number; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Getrule extends StandardParameters { - /** - * Name of the firewall policy to which the queried rule belongs. - */ - firewallPolicy?: string; - /** - * The priority of the rule to get from the firewall policy. - */ - priority?: number; - /** - * Project ID for this request. - */ - project?: string; } - export interface Params$Resource$Networkfirewallpolicies$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - + export interface Params$Resource$Networks$Listpeeringroutes extends StandardParameters { /** - * Request body metadata + * The direction of the exchanged routes. */ - requestBody?: Schema$FirewallPolicy; - } - export interface Params$Resource$Networkfirewallpolicies$List extends StandardParameters { + direction?: string; /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -143885,6 +152842,10 @@ export namespace compute_preview { * `0` to `500`, inclusive. (Default: `500`) */ maxResults?: number; + /** + * Name of the network for this request. + */ + network?: string; /** * Sorts list results by a certain order. By default, results * are returned in alphanumerical order based on the resource name. @@ -143905,16 +152866,25 @@ export namespace compute_preview { * the next page of results. */ pageToken?: string; + /** + * The response will show routes exchanged over the given peering connection. + */ + peeringName?: string; /** * Project ID for this request. */ project?: string; + /** + * The region of the request. The response will include all subnet routes, + * static routes and dynamic routes in the region. + */ + region?: string; } - export interface Params$Resource$Networkfirewallpolicies$Patch extends StandardParameters { + export interface Params$Resource$Networks$Patch extends StandardParameters { /** - * Name of the firewall policy to update. + * Name of the network to update. */ - firewallPolicy?: string; + network?: string; /** * Project ID for this request. */ @@ -143939,17 +152909,13 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$FirewallPolicy; + requestBody?: Schema$Network; } - export interface Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; + export interface Params$Resource$Networks$Removepeering extends StandardParameters { /** - * The priority of the rule to patch. + * Name of the network resource to remove peering from. */ - priority?: number; + network?: string; /** * Project ID for this request. */ @@ -143974,17 +152940,13 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$FirewallPolicyRule; + requestBody?: Schema$NetworksRemovePeeringRequest; } - export interface Params$Resource$Networkfirewallpolicies$Patchrule extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; + export interface Params$Resource$Networks$Requestremovepeering extends StandardParameters { /** - * The priority of the rule to patch. + * Name of the network resource to remove peering from. */ - priority?: number; + network?: string; /** * Project ID for this request. */ @@ -144009,17 +152971,13 @@ export namespace compute_preview { /** * Request body metadata */ - requestBody?: Schema$FirewallPolicyRule; + requestBody?: Schema$NetworksRequestRemovePeeringRequest; } - export interface Params$Resource$Networkfirewallpolicies$Removeassociation extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; + export interface Params$Resource$Networks$Switchtocustommode extends StandardParameters { /** - * Name for the attachment that will be removed. + * Name of the network to be updated. */ - name?: string; + network?: string; /** * Project ID for this request. */ @@ -144041,15 +152999,11 @@ export namespace compute_preview { */ requestId?: string; } - export interface Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; + export interface Params$Resource$Networks$Updatenetworkprofile extends StandardParameters { /** - * The priority of the rule to remove from the firewall policy. + * Name of the network resource to update the network profile for. */ - priority?: number; + network?: string; /** * Project ID for this request. */ @@ -144070,16 +153024,17 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Removerule extends StandardParameters { + /** - * Name of the firewall policy to update. + * Request body metadata */ - firewallPolicy?: string; + requestBody?: Schema$NetworksUpdateNetworkProfileRequest; + } + export interface Params$Resource$Networks$Updatepeering extends StandardParameters { /** - * The priority of the rule to remove from the firewall policy. + * Name of the network resource which the updated peering is belonging to. */ - priority?: number; + network?: string; /** * Project ID for this request. */ @@ -144100,46 +153055,21 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Networkfirewallpolicies$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$NetworksUpdatePeeringRequest; } - export class Resource$Networkprofiles { + export class Resource$Nodegroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Returns the specified network profile. + * Adds specified number of nodes to the node group. * @example * ```js * // Before running the sample: @@ -144163,7 +153093,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -144172,27 +153101,71 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkProfiles.get({ - * // Name of the network profile to return. - * networkProfile: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.addNodes({ + * // Name of the NodeGroup resource. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "additionalNodeCount": 0 + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "features": {}, + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "location": {}, * // "name": "my_name", - * // "profileType": {}, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -144208,53 +153181,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Networkprofiles$Get, + addNodes( + params: Params$Resource$Nodegroups$Addnodes, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Networkprofiles$Get, + addNodes( + params?: Params$Resource$Nodegroups$Addnodes, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkprofiles$Get, + ): Promise>; + addNodes( + params: Params$Resource$Nodegroups$Addnodes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkprofiles$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + addNodes( + params: Params$Resource$Nodegroups$Addnodes, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkprofiles$Get, - callback: BodyResponseCallback + addNodes( + params: Params$Resource$Nodegroups$Addnodes, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + addNodes(callback: BodyResponseCallback): void; + addNodes( paramsOrCallback?: - | Params$Resource$Networkprofiles$Get - | BodyResponseCallback + | Params$Resource$Nodegroups$Addnodes + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkprofiles$Get; + {}) as Params$Resource$Nodegroups$Addnodes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkprofiles$Get; + params = {} as Params$Resource$Nodegroups$Addnodes; options = {}; } @@ -144269,31 +153241,34 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networkProfiles/{networkProfile}' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/addNodes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'networkProfile'], - pathParams: ['networkProfile', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of network profiles available to the specified - * project. + * Retrieves an aggregated list of node groups. + * Note: use nodeGroups.listNodes for more details about each group. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -144326,7 +153301,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkProfiles.list({ + * const res = await compute.nodeGroups.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -144386,6 +153361,14 @@ export namespace compute_preview { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', * // The maximum number of results per page that should be returned. * // If the number of available results is larger than `maxResults`, * // Compute Engine returns a `nextPageToken` that can be used to get @@ -144411,14 +153394,16 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", @@ -144439,57 +153424,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Networkprofiles$List, + aggregatedList( + params: Params$Resource$Nodegroups$Aggregatedlist, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Networkprofiles$List, + aggregatedList( + params?: Params$Resource$Nodegroups$Aggregatedlist, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Networkprofiles$List, + ): Promise>; + aggregatedList( + params: Params$Resource$Nodegroups$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networkprofiles$List, + aggregatedList( + params: Params$Resource$Nodegroups$Aggregatedlist, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networkprofiles$List, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Nodegroups$Aggregatedlist, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + aggregatedList( + callback: BodyResponseCallback ): void; - list( + aggregatedList( paramsOrCallback?: - | Params$Resource$Networkprofiles$List - | BodyResponseCallback + | Params$Resource$Nodegroups$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkprofiles$List; + {}) as Params$Resource$Nodegroups$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkprofiles$List; + params = {} as Params$Resource$Nodegroups$Aggregatedlist; options = {}; } @@ -144503,7 +153487,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/networkProfiles' + rootUrl + '/compute/v1/projects/{project}/aggregated/nodeGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -144516,130 +153500,17 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Networkprofiles$Get extends StandardParameters { - /** - * Name of the network profile to return. - */ - networkProfile?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networkprofiles$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - } - - export class Resource$Networks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Adds a peering to the specified network. + * Deletes the specified NodeGroup resource. * @example * ```js * // Before running the sample: @@ -144671,9 +153542,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.addPeering({ - * // Name of the network resource to add peering to. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.delete({ + * // Name of the NodeGroup resource to delete. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -144691,17 +153562,8 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "autoCreateRoutes": false, - * // "name": "my_name", - * // "networkPeering": {}, - * // "peerNetwork": "my_peerNetwork" - * // } - * }, + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -144710,6 +153572,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -144751,32 +153614,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addPeering( - params: Params$Resource$Networks$Addpeering, + delete( + params: Params$Resource$Nodegroups$Delete, options: StreamMethodOptions ): Promise>; - addPeering( - params?: Params$Resource$Networks$Addpeering, + delete( + params?: Params$Resource$Nodegroups$Delete, options?: MethodOptions ): Promise>; - addPeering( - params: Params$Resource$Networks$Addpeering, + delete( + params: Params$Resource$Nodegroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addPeering( - params: Params$Resource$Networks$Addpeering, + delete( + params: Params$Resource$Nodegroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addPeering( - params: Params$Resource$Networks$Addpeering, + delete( + params: Params$Resource$Nodegroups$Delete, callback: BodyResponseCallback ): void; - addPeering(callback: BodyResponseCallback): void; - addPeering( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Networks$Addpeering + | Params$Resource$Nodegroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -144791,12 +153654,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Addpeering; + {}) as Params$Resource$Nodegroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Addpeering; + params = {} as Params$Resource$Nodegroups$Delete; options = {}; } @@ -144811,16 +153674,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}/addPeering' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -144834,9 +153697,7 @@ export namespace compute_preview { } /** - * Cancel requests to remove a peering from the specified network. Applicable - * only for PeeringConnection with update_strategy=CONSENSUS. Cancels a - * request to remove a peering from the specified network. + * Deletes specified nodes from the node group. * @example * ```js * // Before running the sample: @@ -144868,9 +153729,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.cancelRequestRemovePeering({ - * // Name of the network resource to remove peering from. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.deleteNodes({ + * // Name of the NodeGroup resource whose nodes will be deleted. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -144888,12 +153749,14 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "name": "my_name" + * // "nodes": [] * // } * }, * }); @@ -144904,6 +153767,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -144945,218 +153809,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - cancelRequestRemovePeering( - params: Params$Resource$Networks$Cancelrequestremovepeering, - options: StreamMethodOptions - ): Promise>; - cancelRequestRemovePeering( - params?: Params$Resource$Networks$Cancelrequestremovepeering, - options?: MethodOptions - ): Promise>; - cancelRequestRemovePeering( - params: Params$Resource$Networks$Cancelrequestremovepeering, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancelRequestRemovePeering( - params: Params$Resource$Networks$Cancelrequestremovepeering, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - cancelRequestRemovePeering( - params: Params$Resource$Networks$Cancelrequestremovepeering, - callback: BodyResponseCallback - ): void; - cancelRequestRemovePeering( - callback: BodyResponseCallback - ): void; - cancelRequestRemovePeering( - paramsOrCallback?: - | Params$Resource$Networks$Cancelrequestremovepeering - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Cancelrequestremovepeering; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Cancelrequestremovepeering; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}/cancelRequestRemovePeering' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes the specified network. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.networks.delete({ - * // Name of the network to delete. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - delete( - params: Params$Resource$Networks$Delete, + deleteNodes( + params: Params$Resource$Nodegroups$Deletenodes, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Networks$Delete, + deleteNodes( + params?: Params$Resource$Nodegroups$Deletenodes, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Networks$Delete, + deleteNodes( + params: Params$Resource$Nodegroups$Deletenodes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networks$Delete, + deleteNodes( + params: Params$Resource$Nodegroups$Deletenodes, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networks$Delete, + deleteNodes( + params: Params$Resource$Nodegroups$Deletenodes, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + deleteNodes(callback: BodyResponseCallback): void; + deleteNodes( paramsOrCallback?: - | Params$Resource$Networks$Delete + | Params$Resource$Nodegroups$Deletenodes | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -145170,12 +153848,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Nodegroups$Deletenodes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Delete; + params = {} as Params$Resource$Nodegroups$Deletenodes; options = {}; } @@ -145190,16 +153869,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/deleteNodes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -145213,7 +153892,10 @@ export namespace compute_preview { } /** - * Returns the specified network. + * Returns the specified NodeGroup. Get a list of available NodeGroups + * by making a list() request. + * Note: the "nodes" field should not be used. Use nodeGroups.listNodes + * instead. * @example * ```js * // Before running the sample: @@ -145246,37 +153928,36 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.get({ - * // Name of the network to return. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.get({ + * // Name of the node group to return. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "IPv4Range": "my_IPv4Range", - * // "autoCreateSubnetworks": false, + * // "autoscalingPolicy": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "enableUlaInternalIpv6": false, - * // "firewallPolicy": "my_firewallPolicy", - * // "gatewayIPv4": "my_gatewayIPv4", + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", - * // "mtu": 0, + * // "locationHint": "my_locationHint", + * // "maintenanceInterval": "my_maintenanceInterval", + * // "maintenancePolicy": "my_maintenancePolicy", + * // "maintenanceWindow": {}, * // "name": "my_name", - * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", - * // "networkProfile": "my_networkProfile", - * // "params": {}, - * // "peerings": [], - * // "routingConfig": {}, + * // "nodeTemplate": "my_nodeTemplate", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] + * // "shareSettings": {}, + * // "size": 0, + * // "status": "my_status", + * // "zone": "my_zone" * // } * } * @@ -145293,50 +153974,50 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Networks$Get, + params: Params$Resource$Nodegroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Networks$Get, + params?: Params$Resource$Nodegroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Networks$Get, + params: Params$Resource$Nodegroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Networks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Nodegroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Networks$Get, - callback: BodyResponseCallback + params: Params$Resource$Nodegroups$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Networks$Get - | BodyResponseCallback + | Params$Resource$Nodegroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Get; + params = {} as Params$Resource$Nodegroups$Get; options = {}; } @@ -145351,7 +154032,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -145359,22 +154040,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the effective firewalls on a given network. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -145407,19 +154089,25 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.getEffectiveFirewalls({ - * // Name of the network for this request. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.nodeGroups.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "firewallPolicys": [], - * // "firewalls": [] + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -145435,61 +154123,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getEffectiveFirewalls( - params: Params$Resource$Networks$Geteffectivefirewalls, + getIamPolicy( + params: Params$Resource$Nodegroups$Getiampolicy, options: StreamMethodOptions ): Promise>; - getEffectiveFirewalls( - params?: Params$Resource$Networks$Geteffectivefirewalls, + getIamPolicy( + params?: Params$Resource$Nodegroups$Getiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getEffectiveFirewalls( - params: Params$Resource$Networks$Geteffectivefirewalls, + ): Promise>; + getIamPolicy( + params: Params$Resource$Nodegroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - params: Params$Resource$Networks$Geteffectivefirewalls, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getEffectiveFirewalls( - params: Params$Resource$Networks$Geteffectivefirewalls, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Nodegroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Nodegroups$Getiampolicy, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Networks$Geteffectivefirewalls - | BodyResponseCallback + | Params$Resource$Nodegroups$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Geteffectivefirewalls; + {}) as Params$Resource$Nodegroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Geteffectivefirewalls; + params = {} as Params$Resource$Nodegroups$Getiampolicy; options = {}; } @@ -145504,7 +154183,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}/getEffectiveFirewalls' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -145512,25 +154191,23 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a network in the specified project using the data included - * in the request. + * Creates a NodeGroup resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -145562,7 +154239,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.insert({ + * const res = await compute.nodeGroups.insert({ + * // Initial count of nodes in the node group. + * initialNodeCount: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -145580,31 +154259,30 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "IPv4Range": "my_IPv4Range", - * // "autoCreateSubnetworks": false, + * // "autoscalingPolicy": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "enableUlaInternalIpv6": false, - * // "firewallPolicy": "my_firewallPolicy", - * // "gatewayIPv4": "my_gatewayIPv4", + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", - * // "mtu": 0, + * // "locationHint": "my_locationHint", + * // "maintenanceInterval": "my_maintenanceInterval", + * // "maintenancePolicy": "my_maintenancePolicy", + * // "maintenanceWindow": {}, * // "name": "my_name", - * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", - * // "networkProfile": "my_networkProfile", - * // "params": {}, - * // "peerings": [], - * // "routingConfig": {}, + * // "nodeTemplate": "my_nodeTemplate", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] + * // "shareSettings": {}, + * // "size": 0, + * // "status": "my_status", + * // "zone": "my_zone" * // } * }, * }); @@ -145615,6 +154293,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -145657,31 +154336,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Networks$Insert, + params: Params$Resource$Nodegroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Networks$Insert, + params?: Params$Resource$Nodegroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Networks$Insert, + params: Params$Resource$Nodegroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Networks$Insert, + params: Params$Resource$Nodegroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Networks$Insert, + params: Params$Resource$Nodegroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Networks$Insert + | Params$Resource$Nodegroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -145695,12 +154374,13 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$Insert; + let params = (paramsOrCallback || + {}) as Params$Resource$Nodegroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Insert; + params = {} as Params$Resource$Nodegroups$Insert; options = {}; } @@ -145714,7 +154394,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/networks' + rootUrl + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -145722,8 +154402,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'initialNodeCount'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -145737,7 +154417,8 @@ export namespace compute_preview { } /** - * Retrieves the list of networks available to the specified project. + * Retrieves a list of node groups available to the specified project. + * Note: use nodeGroups.listNodes for more details about each group. * @example * ```js * // Before running the sample: @@ -145770,7 +154451,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.list({ + * const res = await compute.nodeGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -145855,6 +154536,8 @@ export namespace compute_preview { * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -145882,51 +154565,51 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Networks$List, + params: Params$Resource$Nodegroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Networks$List, + params?: Params$Resource$Nodegroups$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Networks$List, + params: Params$Resource$Nodegroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Networks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Nodegroups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Networks$List, - callback: BodyResponseCallback + params: Params$Resource$Nodegroups$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Networks$List - | BodyResponseCallback + | Params$Resource$Nodegroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$List; + let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$List; + params = {} as Params$Resource$Nodegroups$List; options = {}; } @@ -145940,7 +154623,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/global/networks' + rootUrl + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -145948,22 +154631,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the peering routes exchanged over peering connection. + * Lists nodes in the node group. * @example * ```js * // Before running the sample: @@ -145996,9 +154679,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.listPeeringRoutes({ - * // The direction of the exchanged routes. - * direction: 'placeholder-value', + * const res = await compute.nodeGroups.listNodes({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -146064,8 +154745,8 @@ export namespace compute_preview { * // the next page of results in subsequent list requests. Acceptable values are * // `0` to `500`, inclusive. (Default: `500`) * maxResults: 'placeholder-value', - * // Name of the network for this request. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the NodeGroup resource whose nodes you want to list. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Sorts list results by a certain order. By default, results * // are returned in alphanumerical order based on the resource name. * // @@ -146082,14 +154763,11 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // The response will show routes exchanged over the given peering connection. - * peeringName: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The region of the request. The response will include all subnet routes, - * // static routes and dynamic routes in the region. - * region: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -146116,56 +154794,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listPeeringRoutes( - params: Params$Resource$Networks$Listpeeringroutes, + listNodes( + params: Params$Resource$Nodegroups$Listnodes, options: StreamMethodOptions ): Promise>; - listPeeringRoutes( - params?: Params$Resource$Networks$Listpeeringroutes, + listNodes( + params?: Params$Resource$Nodegroups$Listnodes, options?: MethodOptions - ): Promise>; - listPeeringRoutes( - params: Params$Resource$Networks$Listpeeringroutes, + ): Promise>; + listNodes( + params: Params$Resource$Nodegroups$Listnodes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listPeeringRoutes( - params: Params$Resource$Networks$Listpeeringroutes, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listPeeringRoutes( - params: Params$Resource$Networks$Listpeeringroutes, - callback: BodyResponseCallback + listNodes( + params: Params$Resource$Nodegroups$Listnodes, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listPeeringRoutes( - callback: BodyResponseCallback + listNodes( + params: Params$Resource$Nodegroups$Listnodes, + callback: BodyResponseCallback ): void; - listPeeringRoutes( + listNodes(callback: BodyResponseCallback): void; + listNodes( paramsOrCallback?: - | Params$Resource$Networks$Listpeeringroutes - | BodyResponseCallback + | Params$Resource$Nodegroups$Listnodes + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Listpeeringroutes; + {}) as Params$Resource$Nodegroups$Listnodes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Listpeeringroutes; + params = {} as Params$Resource$Nodegroups$Listnodes; options = {}; } @@ -146180,31 +154855,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}/listPeeringRoutes' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/listNodes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified network with the data included in the request. - * Only routingConfig can be modified. + * Updates the specified node group. * @example * ```js * // Before running the sample: @@ -146236,9 +154910,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.patch({ - * // Name of the network to update. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.patch({ + * // Name of the NodeGroup resource to update. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -146256,31 +154930,30 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "IPv4Range": "my_IPv4Range", - * // "autoCreateSubnetworks": false, + * // "autoscalingPolicy": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "enableUlaInternalIpv6": false, - * // "firewallPolicy": "my_firewallPolicy", - * // "gatewayIPv4": "my_gatewayIPv4", + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", - * // "mtu": 0, + * // "locationHint": "my_locationHint", + * // "maintenanceInterval": "my_maintenanceInterval", + * // "maintenancePolicy": "my_maintenancePolicy", + * // "maintenanceWindow": {}, * // "name": "my_name", - * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", - * // "networkProfile": "my_networkProfile", - * // "params": {}, - * // "peerings": [], - * // "routingConfig": {}, + * // "nodeTemplate": "my_nodeTemplate", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] + * // "shareSettings": {}, + * // "size": 0, + * // "status": "my_status", + * // "zone": "my_zone" * // } * }, * }); @@ -146291,6 +154964,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -146333,31 +155007,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Networks$Patch, + params: Params$Resource$Nodegroups$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Networks$Patch, + params?: Params$Resource$Nodegroups$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Networks$Patch, + params: Params$Resource$Nodegroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Networks$Patch, + params: Params$Resource$Nodegroups$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Networks$Patch, + params: Params$Resource$Nodegroups$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Networks$Patch + | Params$Resource$Nodegroups$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146371,12 +155045,12 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$Patch; + let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Patch; + params = {} as Params$Resource$Nodegroups$Patch; options = {}; } @@ -146391,7 +155065,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '2026-10-01-preview', @@ -146399,8 +155073,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -146414,7 +155088,7 @@ export namespace compute_preview { } /** - * Removes a peering from the specified network. + * Perform maintenance on a subset of nodes in the node group. * @example * ```js * // Before running the sample: @@ -146446,9 +155120,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.removePeering({ - * // Name of the network resource to remove peering from. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.performMaintenance({ + * // Name of the node group scoping this request. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -146466,12 +155140,15 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "name": "my_name" + * // "nodes": [], + * // "startTime": "my_startTime" * // } * }, * }); @@ -146482,6 +155159,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -146523,32 +155201,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removePeering( - params: Params$Resource$Networks$Removepeering, + performMaintenance( + params: Params$Resource$Nodegroups$Performmaintenance, options: StreamMethodOptions ): Promise>; - removePeering( - params?: Params$Resource$Networks$Removepeering, + performMaintenance( + params?: Params$Resource$Nodegroups$Performmaintenance, options?: MethodOptions ): Promise>; - removePeering( - params: Params$Resource$Networks$Removepeering, + performMaintenance( + params: Params$Resource$Nodegroups$Performmaintenance, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removePeering( - params: Params$Resource$Networks$Removepeering, + performMaintenance( + params: Params$Resource$Nodegroups$Performmaintenance, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removePeering( - params: Params$Resource$Networks$Removepeering, + performMaintenance( + params: Params$Resource$Nodegroups$Performmaintenance, callback: BodyResponseCallback ): void; - removePeering(callback: BodyResponseCallback): void; - removePeering( + performMaintenance(callback: BodyResponseCallback): void; + performMaintenance( paramsOrCallback?: - | Params$Resource$Networks$Removepeering + | Params$Resource$Nodegroups$Performmaintenance | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146563,12 +155241,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Removepeering; + {}) as Params$Resource$Nodegroups$Performmaintenance; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Removepeering; + params = {} as Params$Resource$Nodegroups$Performmaintenance; options = {}; } @@ -146583,7 +155261,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}/removePeering' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/performMaintenance' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -146591,8 +155269,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -146606,8 +155284,8 @@ export namespace compute_preview { } /** - * Requests to remove a peering from the specified network. Applicable only - * for PeeringConnection with update_strategy=CONSENSUS. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -146639,32 +155317,22 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.requestRemovePeering({ - * // Name of the network resource to remove peering from. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.setIamPolicy({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "name": "my_name" + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -146672,35 +155340,10 @@ export namespace compute_preview { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -146716,54 +155359,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - requestRemovePeering( - params: Params$Resource$Networks$Requestremovepeering, + setIamPolicy( + params: Params$Resource$Nodegroups$Setiampolicy, options: StreamMethodOptions ): Promise>; - requestRemovePeering( - params?: Params$Resource$Networks$Requestremovepeering, + setIamPolicy( + params?: Params$Resource$Nodegroups$Setiampolicy, options?: MethodOptions - ): Promise>; - requestRemovePeering( - params: Params$Resource$Networks$Requestremovepeering, + ): Promise>; + setIamPolicy( + params: Params$Resource$Nodegroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - requestRemovePeering( - params: Params$Resource$Networks$Requestremovepeering, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - requestRemovePeering( - params: Params$Resource$Networks$Requestremovepeering, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Nodegroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - requestRemovePeering( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Nodegroups$Setiampolicy, + callback: BodyResponseCallback ): void; - requestRemovePeering( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Networks$Requestremovepeering - | BodyResponseCallback + | Params$Resource$Nodegroups$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Requestremovepeering; + {}) as Params$Resource$Nodegroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Requestremovepeering; + params = {} as Params$Resource$Nodegroups$Setiampolicy; options = {}; } @@ -146778,7 +155419,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}/requestRemovePeering' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -146786,22 +155427,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Switches the network mode from auto subnet mode to custom subnet mode. + * Updates the node template of the node group. * @example * ```js * // Before running the sample: @@ -146833,9 +155474,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.switchToCustomMode({ - * // Name of the network to be updated. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.setNodeTemplate({ + * // Name of the NodeGroup resource to update. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -146853,6 +155494,16 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "nodeTemplate": "my_nodeTemplate" + * // } + * }, * }); * console.log(res.data); * @@ -146861,6 +155512,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -146902,32 +155554,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - switchToCustomMode( - params: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params: Params$Resource$Nodegroups$Setnodetemplate, options: StreamMethodOptions ): Promise>; - switchToCustomMode( - params?: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params?: Params$Resource$Nodegroups$Setnodetemplate, options?: MethodOptions ): Promise>; - switchToCustomMode( - params: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params: Params$Resource$Nodegroups$Setnodetemplate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - switchToCustomMode( - params: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params: Params$Resource$Nodegroups$Setnodetemplate, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - switchToCustomMode( - params: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params: Params$Resource$Nodegroups$Setnodetemplate, callback: BodyResponseCallback ): void; - switchToCustomMode(callback: BodyResponseCallback): void; - switchToCustomMode( + setNodeTemplate(callback: BodyResponseCallback): void; + setNodeTemplate( paramsOrCallback?: - | Params$Resource$Networks$Switchtocustommode + | Params$Resource$Nodegroups$Setnodetemplate | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146942,12 +155594,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Switchtocustommode; + {}) as Params$Resource$Nodegroups$Setnodetemplate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Switchtocustommode; + params = {} as Params$Resource$Nodegroups$Setnodetemplate; options = {}; } @@ -146962,7 +155614,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}/switchToCustomMode' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/setNodeTemplate' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -146970,8 +155622,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -146985,9 +155637,7 @@ export namespace compute_preview { } /** - * Updates the specified network peering with the data included in the - * request. You can only modify the NetworkPeering.export_custom_routes field - * and the NetworkPeering.import_custom_routes field. + * Simulates maintenance event on specified nodes from the node group. * @example * ```js * // Before running the sample: @@ -147019,9 +155669,10 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.updatePeering({ - * // Name of the network resource which the updated peering is belonging to. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.simulateMaintenanceEvent({ + * // Name of the NodeGroup resource whose nodes will go under maintenance + * // simulation. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', @@ -147039,12 +155690,14 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "networkPeering": {} + * // "nodes": [] * // } * }, * }); @@ -147055,6 +155708,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -147096,32 +155750,34 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updatePeering( - params: Params$Resource$Networks$Updatepeering, + simulateMaintenanceEvent( + params: Params$Resource$Nodegroups$Simulatemaintenanceevent, options: StreamMethodOptions ): Promise>; - updatePeering( - params?: Params$Resource$Networks$Updatepeering, + simulateMaintenanceEvent( + params?: Params$Resource$Nodegroups$Simulatemaintenanceevent, options?: MethodOptions ): Promise>; - updatePeering( - params: Params$Resource$Networks$Updatepeering, + simulateMaintenanceEvent( + params: Params$Resource$Nodegroups$Simulatemaintenanceevent, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updatePeering( - params: Params$Resource$Networks$Updatepeering, + simulateMaintenanceEvent( + params: Params$Resource$Nodegroups$Simulatemaintenanceevent, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updatePeering( - params: Params$Resource$Networks$Updatepeering, + simulateMaintenanceEvent( + params: Params$Resource$Nodegroups$Simulatemaintenanceevent, callback: BodyResponseCallback ): void; - updatePeering(callback: BodyResponseCallback): void; - updatePeering( + simulateMaintenanceEvent( + callback: BodyResponseCallback + ): void; + simulateMaintenanceEvent( paramsOrCallback?: - | Params$Resource$Networks$Updatepeering + | Params$Resource$Nodegroups$Simulatemaintenanceevent | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -147136,12 +155792,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Updatepeering; + {}) as Params$Resource$Nodegroups$Simulatemaintenanceevent; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Updatepeering; + params = {} as Params$Resource$Nodegroups$Simulatemaintenanceevent; options = {}; } @@ -147156,16 +155812,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/global/networks/{network}/updatePeering' + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/simulateMaintenanceEvent' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -147177,13 +155833,170 @@ export namespace compute_preview { return createAPIRequest(parameters); } } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.nodeGroups.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Nodegroups$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Nodegroups$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Nodegroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Nodegroups$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Nodegroups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Nodegroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Nodegroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Nodegroups$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Networks$Addpeering extends StandardParameters { + export interface Params$Resource$Nodegroups$Addnodes extends StandardParameters { /** - * Name of the network resource to add peering to. + * Name of the NodeGroup resource. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -147204,17 +156017,131 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworksAddPeeringRequest; + requestBody?: Schema$NodeGroupsAddNodesRequest; } - export interface Params$Resource$Networks$Cancelrequestremovepeering extends StandardParameters { + export interface Params$Resource$Nodegroups$Aggregatedlist extends StandardParameters { /** - * Name of the network resource to remove peering from. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - network?: string; + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Nodegroups$Delete extends StandardParameters { + /** + * Name of the NodeGroup resource to delete. + */ + nodeGroup?: string; /** * Project ID for this request. */ @@ -147235,17 +156162,16 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * Request body metadata + * The name of the zone for this request. */ - requestBody?: Schema$NetworksCancelRequestRemovePeeringRequest; + zone?: string; } - export interface Params$Resource$Networks$Delete extends StandardParameters { + export interface Params$Resource$Nodegroups$Deletenodes extends StandardParameters { /** - * Name of the network to delete. + * Name of the NodeGroup resource whose nodes will be deleted. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -147266,28 +156192,53 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NodeGroupsDeleteNodesRequest; } - export interface Params$Resource$Networks$Get extends StandardParameters { + export interface Params$Resource$Nodegroups$Get extends StandardParameters { /** - * Name of the network to return. + * Name of the node group to return. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Networks$Geteffectivefirewalls extends StandardParameters { + export interface Params$Resource$Nodegroups$Getiampolicy extends StandardParameters { /** - * Name of the network for this request. + * Requested IAM Policy version. */ - network?: string; + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Networks$Insert extends StandardParameters { + export interface Params$Resource$Nodegroups$Insert extends StandardParameters { + /** + * Initial count of nodes in the node group. + */ + initialNodeCount?: number; /** * Project ID for this request. */ @@ -147308,13 +156259,17 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$Network; + requestBody?: Schema$NodeGroup; } - export interface Params$Resource$Networks$List extends StandardParameters { + export interface Params$Resource$Nodegroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -147408,12 +156363,12 @@ export namespace compute_preview { * Project ID for this request. */ project?: string; - } - export interface Params$Resource$Networks$Listpeeringroutes extends StandardParameters { /** - * The direction of the exchanged routes. + * The name of the zone for this request. */ - direction?: string; + zone?: string; + } + export interface Params$Resource$Nodegroups$Listnodes extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -147484,9 +156439,9 @@ export namespace compute_preview { */ maxResults?: number; /** - * Name of the network for this request. + * Name of the NodeGroup resource whose nodes you want to list. */ - network?: string; + nodeGroup?: string; /** * Sorts list results by a certain order. By default, results * are returned in alphanumerical order based on the resource name. @@ -147507,25 +156462,20 @@ export namespace compute_preview { * the next page of results. */ pageToken?: string; - /** - * The response will show routes exchanged over the given peering connection. - */ - peeringName?: string; /** * Project ID for this request. */ project?: string; /** - * The region of the request. The response will include all subnet routes, - * static routes and dynamic routes in the region. + * The name of the zone for this request. */ - region?: string; + zone?: string; } - export interface Params$Resource$Networks$Patch extends StandardParameters { + export interface Params$Resource$Nodegroups$Patch extends StandardParameters { /** - * Name of the network to update. + * Name of the NodeGroup resource to update. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -147546,17 +156496,21 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$Network; + requestBody?: Schema$NodeGroup; } - export interface Params$Resource$Networks$Removepeering extends StandardParameters { + export interface Params$Resource$Nodegroups$Performmaintenance extends StandardParameters { /** - * Name of the network resource to remove peering from. + * Name of the node group scoping this request. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -147577,74 +156531,40 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworksRemovePeeringRequest; + requestBody?: Schema$NodeGroupsPerformMaintenanceRequest; } - export interface Params$Resource$Networks$Requestremovepeering extends StandardParameters { - /** - * Name of the network resource to remove peering from. - */ - network?: string; + export interface Params$Resource$Nodegroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworksRequestRemovePeeringRequest; - } - export interface Params$Resource$Networks$Switchtocustommode extends StandardParameters { - /** - * Name of the network to be updated. + * Name or id of the resource for this request. */ - network?: string; + resource?: string; /** - * Project ID for this request. + * The name of the zone for this request. */ - project?: string; + zone?: string; + /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Request body metadata */ - requestId?: string; + requestBody?: Schema$ZoneSetPolicyRequest; } - export interface Params$Resource$Networks$Updatepeering extends StandardParameters { + export interface Params$Resource$Nodegroups$Setnodetemplate extends StandardParameters { /** - * Name of the network resource which the updated peering is belonging to. + * Name of the NodeGroup resource to update. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -147652,229 +156572,93 @@ export namespace compute_preview { /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworksUpdatePeeringRequest; - } - - export class Resource$Nodegroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Adds specified number of nodes to the node group. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.nodeGroups.addNodes({ - * // Name of the NodeGroup resource. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "additionalNodeCount": 0 - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * request if it has already been completed. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NodeGroupsSetNodeTemplateRequest; + } + export interface Params$Resource$Nodegroups$Simulatemaintenanceevent extends StandardParameters { + /** + * Name of the NodeGroup resource whose nodes will go under maintenance + * simulation. + */ + nodeGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). */ - addNodes( - params: Params$Resource$Nodegroups$Addnodes, - options: StreamMethodOptions - ): Promise>; - addNodes( - params?: Params$Resource$Nodegroups$Addnodes, - options?: MethodOptions - ): Promise>; - addNodes( - params: Params$Resource$Nodegroups$Addnodes, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addNodes( - params: Params$Resource$Nodegroups$Addnodes, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addNodes( - params: Params$Resource$Nodegroups$Addnodes, - callback: BodyResponseCallback - ): void; - addNodes(callback: BodyResponseCallback): void; - addNodes( - paramsOrCallback?: - | Params$Resource$Nodegroups$Addnodes - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Addnodes; - let options = (optionsOrCallback || {}) as MethodOptions; + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Addnodes; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$NodeGroupsSimulateMaintenanceEventRequest; + } + export interface Params$Resource$Nodegroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/addNodes' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Nodetemplates { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Retrieves an aggregated list of node groups. - * Note: use nodeGroups.listNodes for more details about each group. + * Retrieves an aggregated list of node templates. * * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. @@ -147910,7 +156694,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.aggregatedList({ + * const res = await compute.nodeTemplates.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -148034,55 +156818,55 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Nodegroups$Aggregatedlist, + params: Params$Resource$Nodetemplates$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Nodegroups$Aggregatedlist, + params?: Params$Resource$Nodetemplates$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise>; aggregatedList( - params: Params$Resource$Nodegroups$Aggregatedlist, + params: Params$Resource$Nodetemplates$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Nodegroups$Aggregatedlist, + params: Params$Resource$Nodetemplates$Aggregatedlist, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Nodegroups$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Nodetemplates$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Nodegroups$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Nodetemplates$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Aggregatedlist; + {}) as Params$Resource$Nodetemplates$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Aggregatedlist; + params = {} as Params$Resource$Nodetemplates$Aggregatedlist; options = {}; } @@ -148096,7 +156880,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/nodeGroups' + rootUrl + + '/compute/v1/projects/{project}/aggregated/nodeTemplates' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -148109,17 +156894,17 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified NodeGroup resource. + * Deletes the specified NodeTemplate resource. * @example * ```js * // Before running the sample: @@ -148151,12 +156936,14 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.delete({ - * // Name of the NodeGroup resource to delete. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeTemplates.delete({ + * // Name of the NodeTemplate resource to delete. + * nodeTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -148171,8 +156958,6 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -148181,6 +156966,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -148223,31 +157009,31 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Nodegroups$Delete, + params: Params$Resource$Nodetemplates$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Nodegroups$Delete, + params?: Params$Resource$Nodetemplates$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Nodegroups$Delete, + params: Params$Resource$Nodetemplates$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Nodegroups$Delete, + params: Params$Resource$Nodetemplates$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Nodegroups$Delete, + params: Params$Resource$Nodetemplates$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Nodegroups$Delete + | Params$Resource$Nodetemplates$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -148262,12 +157048,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Delete; + {}) as Params$Resource$Nodetemplates$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Delete; + params = {} as Params$Resource$Nodetemplates$Delete; options = {}; } @@ -148282,7 +157068,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' + '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '2026-10-01-preview', @@ -148290,8 +157076,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'region', 'nodeTemplate'], + pathParams: ['nodeTemplate', 'project', 'region'], context: this.context, }; if (callback) { @@ -148305,7 +157091,7 @@ export namespace compute_preview { } /** - * Deletes specified nodes from the node group. + * Returns the specified node template. * @example * ```js * // Before running the sample: @@ -148329,6 +157115,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -148337,12 +157124,324 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.deleteNodes({ - * // Name of the NodeGroup resource whose nodes will be deleted. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeTemplates.get({ + * // Name of the node template to return. + * nodeTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "accelerators": [], + * // "cpuOvercommitType": "my_cpuOvercommitType", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "disks": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "nodeAffinityLabels": {}, + * // "nodeType": "my_nodeType", + * // "nodeTypeFlexibility": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "serverBinding": {}, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Nodetemplates$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Nodetemplates$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Nodetemplates$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Nodetemplates$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Nodetemplates$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Nodetemplates$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetemplates$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Nodetemplates$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'region', 'nodeTemplate'], + pathParams: ['nodeTemplate', 'project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.nodeTemplates.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Nodetemplates$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Nodetemplates$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Nodetemplates$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Nodetemplates$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Nodetemplates$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Nodetemplates$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetemplates$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Nodetemplates$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a NodeTemplate resource in the specified project using the data + * included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.nodeTemplates.insert({ * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -148357,14 +157456,27 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "nodes": [] + * // "accelerators": [], + * // "cpuOvercommitType": "my_cpuOvercommitType", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "disks": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "nodeAffinityLabels": {}, + * // "nodeType": "my_nodeType", + * // "nodeTypeFlexibility": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "serverBinding": {}, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage" * // } * }, * }); @@ -148375,6 +157487,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -148416,32 +157529,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deleteNodes( - params: Params$Resource$Nodegroups$Deletenodes, + insert( + params: Params$Resource$Nodetemplates$Insert, options: StreamMethodOptions ): Promise>; - deleteNodes( - params?: Params$Resource$Nodegroups$Deletenodes, + insert( + params?: Params$Resource$Nodetemplates$Insert, options?: MethodOptions ): Promise>; - deleteNodes( - params: Params$Resource$Nodegroups$Deletenodes, + insert( + params: Params$Resource$Nodetemplates$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteNodes( - params: Params$Resource$Nodegroups$Deletenodes, + insert( + params: Params$Resource$Nodetemplates$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteNodes( - params: Params$Resource$Nodegroups$Deletenodes, + insert( + params: Params$Resource$Nodetemplates$Insert, callback: BodyResponseCallback ): void; - deleteNodes(callback: BodyResponseCallback): void; - deleteNodes( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Nodegroups$Deletenodes + | Params$Resource$Nodetemplates$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -148456,12 +157569,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Deletenodes; + {}) as Params$Resource$Nodetemplates$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Deletenodes; + params = {} as Params$Resource$Nodetemplates$Insert; options = {}; } @@ -148476,7 +157589,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/deleteNodes' + '/compute/v1/projects/{project}/regions/{region}/nodeTemplates' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -148484,8 +157597,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -148499,10 +157612,8 @@ export namespace compute_preview { } /** - * Returns the specified NodeGroup. Get a list of available NodeGroups - * by making a list() request. - * Note: the "nodes" field should not be used. Use nodeGroups.listNodes - * instead. + * Retrieves a list of node templates available to the specified + * project. * @example * ```js * // Before running the sample: @@ -148535,36 +157646,416 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.get({ - * // Name of the node group to return. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeTemplates.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Nodetemplates$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Nodetemplates$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Nodetemplates$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Nodetemplates$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Nodetemplates$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Nodetemplates$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetemplates$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Nodetemplates$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/nodeTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.nodeTemplates.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Nodetemplates$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Nodetemplates$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Nodetemplates$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Nodetemplates$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Nodetemplates$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Nodetemplates$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetemplates$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Nodetemplates$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.nodeTemplates.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "autoscalingPolicy": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "locationHint": "my_locationHint", - * // "maintenanceInterval": "my_maintenanceInterval", - * // "maintenancePolicy": "my_maintenancePolicy", - * // "maintenanceWindow": {}, - * // "name": "my_name", - * // "nodeTemplate": "my_nodeTemplate", - * // "selfLink": "my_selfLink", - * // "shareSettings": {}, - * // "size": 0, - * // "status": "my_status", - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -148580,51 +158071,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Nodegroups$Get, + testIamPermissions( + params: Params$Resource$Nodetemplates$Testiampermissions, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Nodegroups$Get, + testIamPermissions( + params?: Params$Resource$Nodetemplates$Testiampermissions, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Nodegroups$Get, + ): Promise>; + testIamPermissions( + params: Params$Resource$Nodetemplates$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodegroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Nodetemplates$Testiampermissions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodegroups$Get, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Nodetemplates$Testiampermissions, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Nodegroups$Get - | BodyResponseCallback + | Params$Resource$Nodetemplates$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetemplates$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Get; + params = {} as Params$Resource$Nodetemplates$Testiampermissions; options = {}; } @@ -148639,31 +158135,381 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' + '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Nodetemplates$Aggregatedlist extends StandardParameters { /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Nodetemplates$Delete extends StandardParameters { + /** + * Name of the NodeTemplate resource to delete. + */ + nodeTemplate?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + } + export interface Params$Resource$Nodetemplates$Get extends StandardParameters { + /** + * Name of the node template to return. + */ + nodeTemplate?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Nodetemplates$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Nodetemplates$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NodeTemplate; + } + export interface Params$Resource$Nodetemplates$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Nodetemplates$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Nodetemplates$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Nodetypes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves an aggregated list of node types. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -148696,25 +158542,114 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.nodeTypes.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -148730,52 +158665,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getIamPolicy( - params: Params$Resource$Nodegroups$Getiampolicy, + aggregatedList( + params: Params$Resource$Nodetypes$Aggregatedlist, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Nodegroups$Getiampolicy, + aggregatedList( + params?: Params$Resource$Nodetypes$Aggregatedlist, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Nodegroups$Getiampolicy, + ): Promise>; + aggregatedList( + params: Params$Resource$Nodetypes$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Nodegroups$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Nodetypes$Aggregatedlist, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Nodegroups$Getiampolicy, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Nodetypes$Aggregatedlist, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Nodegroups$Getiampolicy - | BodyResponseCallback + | Params$Resource$Nodetypes$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Getiampolicy; + {}) as Params$Resource$Nodetypes$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Getiampolicy; + params = {} as Params$Resource$Nodetypes$Aggregatedlist; options = {}; } @@ -148789,8 +158728,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy' + rootUrl + '/compute/v1/projects/{project}/aggregated/nodeTypes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -148798,23 +158736,22 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a NodeGroup resource in the specified project using the data - * included in the request. + * Returns the specified node type. * @example * ```js * // Before running the sample: @@ -148838,6 +158775,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -148846,85 +158784,31 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.insert({ - * // Initial count of nodes in the node group. - * initialNodeCount: 'placeholder-value', + * const res = await compute.nodeTypes.get({ + * // Name of the node type to return. + * nodeType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "autoscalingPolicy": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "locationHint": "my_locationHint", - * // "maintenanceInterval": "my_maintenanceInterval", - * // "maintenancePolicy": "my_maintenancePolicy", - * // "maintenanceWindow": {}, - * // "name": "my_name", - * // "nodeTemplate": "my_nodeTemplate", - * // "selfLink": "my_selfLink", - * // "shareSettings": {}, - * // "size": 0, - * // "status": "my_status", - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "cpuPlatform": "my_cpuPlatform", * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "guestCpus": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", + * // "localSsdGb": 0, + * // "maxVms": 0, + * // "memoryMb": 0, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -148941,52 +158825,51 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Nodegroups$Insert, + get( + params: Params$Resource$Nodetypes$Get, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Nodegroups$Insert, + get( + params?: Params$Resource$Nodetypes$Get, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Nodegroups$Insert, + ): Promise>; + get( + params: Params$Resource$Nodetypes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Nodegroups$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Nodetypes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Nodegroups$Insert, - callback: BodyResponseCallback + get( + params: Params$Resource$Nodetypes$Get, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Nodegroups$Insert - | BodyResponseCallback + | Params$Resource$Nodetypes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Insert; + let params = (paramsOrCallback || {}) as Params$Resource$Nodetypes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Insert; + params = {} as Params$Resource$Nodetypes$Get; options = {}; } @@ -149000,31 +158883,32 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups' + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/nodeTypes/{nodeType}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'initialNodeCount'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'nodeType'], + pathParams: ['nodeType', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of node groups available to the specified project. - * Note: use nodeGroups.listNodes for more details about each group. + * Retrieves a list of node types available to the specified + * project. * @example * ```js * // Before running the sample: @@ -149057,7 +158941,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.list({ + * const res = await compute.nodeTypes.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -149171,51 +159055,51 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Nodegroups$List, + params: Params$Resource$Nodetypes$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Nodegroups$List, + params?: Params$Resource$Nodetypes$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Nodegroups$List, + params: Params$Resource$Nodetypes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Nodegroups$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Nodetypes$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Nodegroups$List, - callback: BodyResponseCallback + params: Params$Resource$Nodetypes$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Nodegroups$List - | BodyResponseCallback + | Params$Resource$Nodetypes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$List; + let params = (paramsOrCallback || {}) as Params$Resource$Nodetypes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$List; + params = {} as Params$Resource$Nodetypes$List; options = {}; } @@ -149224,35 +159108,270 @@ export namespace compute_preview { options = {}; } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/compute/v1/projects/{project}/zones/{zone}/nodeGroups' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/projects/{project}/zones/{zone}/nodeTypes' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Nodetypes$Aggregatedlist extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, + * global) should be included in the response. For new resource types added + * after this field, the flag has no effect as new resource types will always + * include every visible scope for each scope type in response. For resource + * types which predate this field, if this flag is omitted or false, only + * scopes of the scope types where the resource type is expected to be found + * will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Nodetypes$Get extends StandardParameters { + /** + * Name of the node type to return. + */ + nodeType?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Nodetypes$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Organizationglobalvmextensionpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Lists nodes in the node group. + * Retrieves the list of all organization level VM Extension Policy resources + * available to the specified organization. + * + * To prevent failure, it's recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -149285,105 +159404,114 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.listNodes({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Name of the NodeGroup resource whose nodes you want to list. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); + * const res = + * await compute.organizationGlobalVmExtensionPolicies.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, + * // global) should be included in the response. For new resource types added + * // after this field, the flag has no effect as new resource types will always + * // include every visible scope for each scope type in response. For resource + * // types which predate this field, if this flag is omitted or false, only + * // scopes of the scope types where the resource type is expected to be found + * // will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -149400,53 +159528,62 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listNodes( - params: Params$Resource$Nodegroups$Listnodes, + aggregatedList( + params: Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; - listNodes( - params?: Params$Resource$Nodegroups$Listnodes, + aggregatedList( + params?: Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist, options?: MethodOptions - ): Promise>; - listNodes( - params: Params$Resource$Nodegroups$Listnodes, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listNodes( - params: Params$Resource$Nodegroups$Listnodes, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listNodes( - params: Params$Resource$Nodegroups$Listnodes, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; - listNodes(callback: BodyResponseCallback): void; - listNodes( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Nodegroups$Listnodes - | BodyResponseCallback + | Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Listnodes; + {}) as Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Listnodes; + params = + {} as Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist; options = {}; } @@ -149461,30 +159598,37 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/listNodes' + '/compute/v1/{+organization}/aggregated/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['organization'], + pathParams: ['organization'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Updates the specified node group. + * Purge scoped resources (zonal policies) from an organization level global + * VM extension policy, and then delete the global VM extension policy. Purge + * of the scoped resources is a pre-condition of the global VM extension + * policy deletion. The deletion of the global VM extension policy happens + * after the purge rollout is done, so it's not a part of the LRO. It's an + * automatic process that triggers in the backend. * @example * ```js * // Before running the sample: @@ -149516,12 +159660,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.patch({ - * // Name of the NodeGroup resource to update. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * const res = await compute.organizationGlobalVmExtensionPolicies.delete({ + * // Name of the global VM extension policy to purge scoped resources for. + * globalVmExtensionPolicy: 'placeholder-value', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -149536,30 +159679,15 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "autoscalingPolicy": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "locationHint": "my_locationHint", - * // "maintenanceInterval": "my_maintenanceInterval", - * // "maintenancePolicy": "my_maintenancePolicy", - * // "maintenanceWindow": {}, + * // "conflictBehavior": "my_conflictBehavior", * // "name": "my_name", - * // "nodeTemplate": "my_nodeTemplate", - * // "selfLink": "my_selfLink", - * // "shareSettings": {}, - * // "size": 0, - * // "status": "my_status", - * // "zone": "my_zone" + * // "predefinedRolloutPlan": "my_predefinedRolloutPlan", + * // "retryUuid": "my_retryUuid" * // } * }, * }); @@ -149570,6 +159698,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -149611,32 +159740,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Nodegroups$Patch, + delete( + params: Params$Resource$Organizationglobalvmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Nodegroups$Patch, + delete( + params?: Params$Resource$Organizationglobalvmextensionpolicies$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Nodegroups$Patch, + delete( + params: Params$Resource$Organizationglobalvmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Nodegroups$Patch, + delete( + params: Params$Resource$Organizationglobalvmextensionpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Nodegroups$Patch, + delete( + params: Params$Resource$Organizationglobalvmextensionpolicies$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Nodegroups$Patch + | Params$Resource$Organizationglobalvmextensionpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -149650,12 +159779,14 @@ export namespace compute_preview { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$Patch; + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationglobalvmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Patch; + params = + {} as Params$Resource$Organizationglobalvmextensionpolicies$Delete; options = {}; } @@ -149670,16 +159801,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' + '/compute/v1/{+organization}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['organization', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'organization'], context: this.context, }; if (callback) { @@ -149693,7 +159824,7 @@ export namespace compute_preview { } /** - * Perform maintenance on a subset of nodes in the node group. + * Gets details of an organization level GlobalVmExtensionPolicy. * @example * ```js * // Before running the sample: @@ -149717,6 +159848,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -149725,71 +159857,30 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.performMaintenance({ - * // Name of the node group scoping this request. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "nodes": [], - * // "startTime": "my_startTime" - * // } - * }, + * const res = await compute.organizationGlobalVmExtensionPolicies.get({ + * // Name of the GlobalVmExtensionPolicy resource to return. + * globalVmExtensionPolicy: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "extensionPolicies": {}, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "instanceSelectors": [], * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -149805,52 +159896,55 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - performMaintenance( - params: Params$Resource$Nodegroups$Performmaintenance, + get( + params: Params$Resource$Organizationglobalvmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; - performMaintenance( - params?: Params$Resource$Nodegroups$Performmaintenance, + get( + params?: Params$Resource$Organizationglobalvmextensionpolicies$Get, options?: MethodOptions - ): Promise>; - performMaintenance( - params: Params$Resource$Nodegroups$Performmaintenance, + ): Promise>; + get( + params: Params$Resource$Organizationglobalvmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - performMaintenance( - params: Params$Resource$Nodegroups$Performmaintenance, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationglobalvmextensionpolicies$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - performMaintenance( - params: Params$Resource$Nodegroups$Performmaintenance, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationglobalvmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - performMaintenance(callback: BodyResponseCallback): void; - performMaintenance( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Nodegroups$Performmaintenance - | BodyResponseCallback + | Params$Resource$Organizationglobalvmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Performmaintenance; + {}) as Params$Resource$Organizationglobalvmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Performmaintenance; + params = + {} as Params$Resource$Organizationglobalvmextensionpolicies$Get; options = {}; } @@ -149865,31 +159959,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/performMaintenance' + '/compute/v1/{+organization}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['organization', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'organization'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Retrieves details of a specific VM extension. * @example * ```js * // Before running the sample: @@ -149913,6 +160006,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -149921,33 +160015,24 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.setIamPolicy({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, - * }); + * const res = + * await compute.organizationGlobalVmExtensionPolicies.getVmExtension({ + * // Required. Name of the VM extension for this request. + * extensionName: 'placeholder-value', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "versions": [] * // } * } * @@ -149963,52 +160048,56 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Nodegroups$Setiampolicy, + getVmExtension( + params: Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Nodegroups$Setiampolicy, + getVmExtension( + params?: Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Nodegroups$Setiampolicy, + ): Promise>; + getVmExtension( + params: Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Nodegroups$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Nodegroups$Setiampolicy, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + getVmExtension( + callback: BodyResponseCallback + ): void; + getVmExtension( paramsOrCallback?: - | Params$Resource$Nodegroups$Setiampolicy - | BodyResponseCallback + | Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Setiampolicy; + {}) as Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Setiampolicy; + params = + {} as Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension; options = {}; } @@ -150023,30 +160112,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy' + '/compute/v1/{+organization}/global/vmExtensions/{extensionName}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['organization', 'extensionName'], + pathParams: ['extensionName', 'organization'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the node template of the node group. + * Creates a new organization level GlobalVmExtensionPolicy. * @example * ```js * // Before running the sample: @@ -150078,12 +160167,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.setNodeTemplate({ - * // Name of the NodeGroup resource to update. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * const res = await compute.organizationGlobalVmExtensionPolicies.insert({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -150098,14 +160184,24 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "nodeTemplate": "my_nodeTemplate" + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "name": "my_name", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -150116,6 +160212,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -150157,32 +160254,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setNodeTemplate( - params: Params$Resource$Nodegroups$Setnodetemplate, + insert( + params: Params$Resource$Organizationglobalvmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; - setNodeTemplate( - params?: Params$Resource$Nodegroups$Setnodetemplate, + insert( + params?: Params$Resource$Organizationglobalvmextensionpolicies$Insert, options?: MethodOptions ): Promise>; - setNodeTemplate( - params: Params$Resource$Nodegroups$Setnodetemplate, + insert( + params: Params$Resource$Organizationglobalvmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setNodeTemplate( - params: Params$Resource$Nodegroups$Setnodetemplate, + insert( + params: Params$Resource$Organizationglobalvmextensionpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setNodeTemplate( - params: Params$Resource$Nodegroups$Setnodetemplate, + insert( + params: Params$Resource$Organizationglobalvmextensionpolicies$Insert, callback: BodyResponseCallback ): void; - setNodeTemplate(callback: BodyResponseCallback): void; - setNodeTemplate( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Nodegroups$Setnodetemplate + | Params$Resource$Organizationglobalvmextensionpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -150197,12 +160294,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Setnodetemplate; + {}) as Params$Resource$Organizationglobalvmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Setnodetemplate; + params = + {} as Params$Resource$Organizationglobalvmextensionpolicies$Insert; options = {}; } @@ -150216,8 +160314,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/setNodeTemplate' + rootUrl + '/compute/v1/{+organization}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -150225,8 +160322,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['organization'], + pathParams: ['organization'], context: this.context, }; if (callback) { @@ -150240,7 +160337,7 @@ export namespace compute_preview { } /** - * Simulates maintenance event on specified nodes from the node group. + * Lists organization level GlobalVmExtensionPolicies. * @example * ```js * // Before running the sample: @@ -150264,6 +160361,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -150272,71 +160370,103 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.simulateMaintenanceEvent({ - * // Name of the NodeGroup resource whose nodes will go under maintenance - * // simulation. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.organizationGlobalVmExtensionPolicies.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "nodes": [] - * // } - * }, + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -150352,54 +160482,58 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - simulateMaintenanceEvent( - params: Params$Resource$Nodegroups$Simulatemaintenanceevent, + list( + params: Params$Resource$Organizationglobalvmextensionpolicies$List, options: StreamMethodOptions ): Promise>; - simulateMaintenanceEvent( - params?: Params$Resource$Nodegroups$Simulatemaintenanceevent, + list( + params?: Params$Resource$Organizationglobalvmextensionpolicies$List, options?: MethodOptions - ): Promise>; - simulateMaintenanceEvent( - params: Params$Resource$Nodegroups$Simulatemaintenanceevent, + ): Promise>; + list( + params: Params$Resource$Organizationglobalvmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( - params: Params$Resource$Nodegroups$Simulatemaintenanceevent, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizationglobalvmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( - params: Params$Resource$Nodegroups$Simulatemaintenanceevent, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizationglobalvmextensionpolicies$List, + callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( + list( paramsOrCallback?: - | Params$Resource$Nodegroups$Simulatemaintenanceevent - | BodyResponseCallback + | Params$Resource$Organizationglobalvmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Simulatemaintenanceevent; + {}) as Params$Resource$Organizationglobalvmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Simulatemaintenanceevent; + params = + {} as Params$Resource$Organizationglobalvmextensionpolicies$List; options = {}; } @@ -150413,31 +160547,31 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/simulateMaintenanceEvent' + rootUrl + '/compute/v1/{+organization}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['organization'], + pathParams: ['organization'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Lists all VM extensions within an organization. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -150470,20 +160604,278 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = + * await compute.organizationGlobalVmExtensionPolicies.listVmExtensions({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + listVmExtensions( + params: Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions, + options: StreamMethodOptions + ): Promise>; + listVmExtensions( + params?: Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions, + options?: MethodOptions + ): Promise>; + listVmExtensions( + params: Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listVmExtensions( + params: Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listVmExtensions( + params: Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback + ): void; + listVmExtensions( + callback: BodyResponseCallback + ): void; + listVmExtensions( + paramsOrCallback?: + | Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/{+organization}/global/vmExtensions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['organization'], + pathParams: ['organization'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates an organization level GlobalVmExtensionPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.organizationGlobalVmExtensionPolicies.update({ + * // Name of the global VM extension policy to update. + * globalVmExtensionPolicy: 'placeholder-value', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "name": "my_name", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -150491,7 +160883,36 @@ export namespace compute_preview { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -150507,56 +160928,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Nodegroups$Testiampermissions, + update( + params: Params$Resource$Organizationglobalvmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Nodegroups$Testiampermissions, + update( + params?: Params$Resource$Organizationglobalvmextensionpolicies$Update, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Nodegroups$Testiampermissions, + ): Promise>; + update( + params: Params$Resource$Organizationglobalvmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Nodegroups$Testiampermissions, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Nodegroups$Testiampermissions, - callback: BodyResponseCallback + update( + params: Params$Resource$Organizationglobalvmextensionpolicies$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + update( + params: Params$Resource$Organizationglobalvmextensionpolicies$Update, + callback: BodyResponseCallback ): void; - testIamPermissions( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Nodegroups$Testiampermissions - | BodyResponseCallback + | Params$Resource$Organizationglobalvmextensionpolicies$Update + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Testiampermissions; + {}) as Params$Resource$Organizationglobalvmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Testiampermissions; + params = + {} as Params$Resource$Organizationglobalvmextensionpolicies$Update; options = {}; } @@ -150571,65 +160989,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions' + '/compute/v1/{+organization}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['organization', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'organization'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Nodegroups$Addnodes extends StandardParameters { - /** - * Name of the NodeGroup resource. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsAddNodesRequest; - } - export interface Params$Resource$Nodegroups$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Organizationglobalvmextensionpolicies$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -150723,61 +161106,31 @@ export namespace compute_preview { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Organization ID for this request. + */ + organization?: string; /** * Specifies a page token to use. Set `pageToken` to the * `nextPageToken` returned by a previous list request to get * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; /** * The Shared VPC service project id or service project number for which * aggregated list request is invoked for subnetworks list-usable api. */ serviceProjectNumber?: string; } - export interface Params$Resource$Nodegroups$Delete extends StandardParameters { - /** - * Name of the NodeGroup resource to delete. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Nodegroups$Deletenodes extends StandardParameters { + export interface Params$Resource$Organizationglobalvmextensionpolicies$Delete extends StandardParameters { /** - * Name of the NodeGroup resource whose nodes will be deleted. + * Name of the global VM extension policy to purge scoped resources for. */ - nodeGroup?: string; + globalVmExtensionPolicy?: string; /** - * Project ID for this request. + * Organization ID for this request. */ - project?: string; + organization?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -150794,57 +161147,37 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$NodeGroupsDeleteNodesRequest; + requestBody?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput; } - export interface Params$Resource$Nodegroups$Get extends StandardParameters { - /** - * Name of the node group to return. - */ - nodeGroup?: string; + export interface Params$Resource$Organizationglobalvmextensionpolicies$Get extends StandardParameters { /** - * Project ID for this request. + * Name of the GlobalVmExtensionPolicy resource to return. */ - project?: string; + globalVmExtensionPolicy?: string; /** - * The name of the zone for this request. + * Organization ID for this request. */ - zone?: string; + organization?: string; } - export interface Params$Resource$Nodegroups$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Organizationglobalvmextensionpolicies$Getvmextension extends StandardParameters { /** - * Name or id of the resource for this request. + * Required. Name of the VM extension for this request. */ - resource?: string; + extensionName?: string; /** - * The name of the zone for this request. + * Organization ID for this request. */ - zone?: string; + organization?: string; } - export interface Params$Resource$Nodegroups$Insert extends StandardParameters { - /** - * Initial count of nodes in the node group. - */ - initialNodeCount?: number; + export interface Params$Resource$Organizationglobalvmextensionpolicies$Insert extends StandardParameters { /** - * Project ID for this request. + * Organization ID for this request. */ - project?: string; + organization?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -150861,17 +161194,13 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$NodeGroup; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export interface Params$Resource$Nodegroups$List extends StandardParameters { + export interface Params$Resource$Organizationglobalvmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -150955,22 +161284,18 @@ export namespace compute_preview { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Organization ID for this request. + */ + organization?: string; /** * Specifies a page token to use. Set `pageToken` to the * `nextPageToken` returned by a previous list request to get * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Nodegroups$Listnodes extends StandardParameters { + export interface Params$Resource$Organizationglobalvmextensionpolicies$Listvmextensions extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -151040,10 +161365,6 @@ export namespace compute_preview { * `0` to `500`, inclusive. (Default: `500`) */ maxResults?: number; - /** - * Name of the NodeGroup resource whose nodes you want to list. - */ - nodeGroup?: string; /** * Sorts list results by a certain order. By default, results * are returned in alphanumerical order based on the resource name. @@ -151058,155 +161379,26 @@ export namespace compute_preview { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Required. Organization ID for this request. + */ + organization?: string; /** * Specifies a page token to use. Set `pageToken` to the * `nextPageToken` returned by a previous list request to get * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Nodegroups$Patch extends StandardParameters { - /** - * Name of the NodeGroup resource to update. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroup; - } - export interface Params$Resource$Nodegroups$Performmaintenance extends StandardParameters { - /** - * Name of the node group scoping this request. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsPerformMaintenanceRequest; - } - export interface Params$Resource$Nodegroups$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ZoneSetPolicyRequest; - } - export interface Params$Resource$Nodegroups$Setnodetemplate extends StandardParameters { - /** - * Name of the NodeGroup resource to update. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsSetNodeTemplateRequest; } - export interface Params$Resource$Nodegroups$Simulatemaintenanceevent extends StandardParameters { + export interface Params$Resource$Organizationglobalvmextensionpolicies$Update extends StandardParameters { /** - * Name of the NodeGroup resource whose nodes will go under maintenance - * simulation. + * Name of the global VM extension policy to update. */ - nodeGroup?: string; + globalVmExtensionPolicy?: string; /** - * Project ID for this request. + * Organization ID for this request. */ - project?: string; + organization?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -151223,290 +161415,30 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsSimulateMaintenanceEventRequest; - } - export interface Params$Resource$Nodegroups$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export class Resource$Nodetemplates { + export class Resource$Organizationsecuritypolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of node templates. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.nodeTemplates.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * Inserts an association for the specified security policy. * - * ``` + * This has billing implications. Projects in the hierarchy with effective + * hierarchical security policies will be automatically enrolled into Cloud + * Armor Enterprise if not already enrolled. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - aggregatedList( - params: Params$Resource$Nodetemplates$Aggregatedlist, - options: StreamMethodOptions - ): Promise>; - aggregatedList( - params?: Params$Resource$Nodetemplates$Aggregatedlist, - options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Nodetemplates$Aggregatedlist, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Nodetemplates$Aggregatedlist, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Nodetemplates$Aggregatedlist, - callback: BodyResponseCallback - ): void; - aggregatedList( - callback: BodyResponseCallback - ): void; - aggregatedList( - paramsOrCallback?: - | Params$Resource$Nodetemplates$Aggregatedlist - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Aggregatedlist; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Aggregatedlist; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/aggregated/nodeTemplates' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes the specified NodeTemplate resource. + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.addAssociation + * instead. * @example * ```js * // Before running the sample: @@ -151538,14 +161470,11 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.delete({ - * // Name of the NodeTemplate resource to delete. - * nodeTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.organizationSecurityPolicies.addAssociation({ + * // Indicates whether or not to replace it if an association of the attachment + * // already exists. This is false by default, in which case an error will be + * // returned if an association already exists. + * replaceExistingAssociation: 'placeholder-value', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -151560,6 +161489,22 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attachmentId": "my_attachmentId", + * // "displayName": "my_displayName", + * // "excludedFolders": [], + * // "excludedProjects": [], + * // "name": "my_name", + * // "securityPolicyId": "my_securityPolicyId", + * // "shortName": "my_shortName" + * // } + * }, * }); * console.log(res.data); * @@ -151568,6 +161513,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -151609,32 +161555,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Nodetemplates$Delete, + addAssociation( + params: Params$Resource$Organizationsecuritypolicies$Addassociation, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Nodetemplates$Delete, + addAssociation( + params?: Params$Resource$Organizationsecuritypolicies$Addassociation, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Nodetemplates$Delete, + addAssociation( + params: Params$Resource$Organizationsecuritypolicies$Addassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Nodetemplates$Delete, + addAssociation( + params: Params$Resource$Organizationsecuritypolicies$Addassociation, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Nodetemplates$Delete, + addAssociation( + params: Params$Resource$Organizationsecuritypolicies$Addassociation, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + addAssociation(callback: BodyResponseCallback): void; + addAssociation( paramsOrCallback?: - | Params$Resource$Nodetemplates$Delete + | Params$Resource$Organizationsecuritypolicies$Addassociation | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -151649,12 +161595,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Delete; + {}) as Params$Resource$Organizationsecuritypolicies$Addassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Delete; + params = + {} as Params$Resource$Organizationsecuritypolicies$Addassociation; options = {}; } @@ -151669,16 +161616,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/addAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'nodeTemplate'], - pathParams: ['nodeTemplate', 'project', 'region'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { @@ -151692,7 +161639,11 @@ export namespace compute_preview { } /** - * Returns the specified node template. + * Inserts a rule into a security policy. + * + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.addRule instead. * @example * ```js * // Before running the sample: @@ -151716,7 +161667,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -151725,35 +161675,76 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.get({ - * // Name of the node template to return. - * nodeTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.organizationSecurityPolicies.addRule({ + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "headerAction": {}, + * // "kind": "my_kind", + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "accelerators": [], - * // "cpuOvercommitType": "my_cpuOvercommitType", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "disks": [], + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "nodeAffinityLabels": {}, - * // "nodeType": "my_nodeType", - * // "nodeTypeFlexibility": {}, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "serverBinding": {}, + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "statusMessage": "my_statusMessage" + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -151769,53 +161760,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Nodetemplates$Get, + addRule( + params: Params$Resource$Organizationsecuritypolicies$Addrule, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Nodetemplates$Get, + addRule( + params?: Params$Resource$Organizationsecuritypolicies$Addrule, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Nodetemplates$Get, + ): Promise>; + addRule( + params: Params$Resource$Organizationsecuritypolicies$Addrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodetemplates$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + addRule( + params: Params$Resource$Organizationsecuritypolicies$Addrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodetemplates$Get, - callback: BodyResponseCallback + addRule( + params: Params$Resource$Organizationsecuritypolicies$Addrule, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + addRule(callback: BodyResponseCallback): void; + addRule( paramsOrCallback?: - | Params$Resource$Nodetemplates$Get - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Addrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Get; + {}) as Params$Resource$Organizationsecuritypolicies$Addrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Get; + params = {} as Params$Resource$Organizationsecuritypolicies$Addrule; options = {}; } @@ -151830,182 +161820,35 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/addRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'nodeTemplate'], - pathParams: ['nodeTemplate', 'project', 'region'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.nodeTemplates.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` + * Copies rules to the specified security policy. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - getIamPolicy( - params: Params$Resource$Nodetemplates$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Nodetemplates$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Nodetemplates$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Nodetemplates$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Nodetemplates$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Nodetemplates$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Getiampolicy; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates a NodeTemplate resource in the specified project using the data - * included in the request. + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.cloneRules + * instead. * @example * ```js * // Before running the sample: @@ -152037,12 +161880,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.insert({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.organizationSecurityPolicies.copyRules({ * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -152052,34 +161890,15 @@ export namespace compute_preview { * // request ID, the server can check if original operation with the same * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accelerators": [], - * // "cpuOvercommitType": "my_cpuOvercommitType", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "disks": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "nodeAffinityLabels": {}, - * // "nodeType": "my_nodeType", - * // "nodeTypeFlexibility": {}, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "serverBinding": {}, - * // "status": "my_status", - * // "statusMessage": "my_statusMessage" - * // } - * }, + * // + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * // The security policy from which to copy rules. + * sourceSecurityPolicy: 'placeholder-value', * }); * console.log(res.data); * @@ -152088,6 +161907,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -152129,32 +161949,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Nodetemplates$Insert, + copyRules( + params: Params$Resource$Organizationsecuritypolicies$Copyrules, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Nodetemplates$Insert, + copyRules( + params?: Params$Resource$Organizationsecuritypolicies$Copyrules, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Nodetemplates$Insert, + copyRules( + params: Params$Resource$Organizationsecuritypolicies$Copyrules, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Nodetemplates$Insert, + copyRules( + params: Params$Resource$Organizationsecuritypolicies$Copyrules, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Nodetemplates$Insert, + copyRules( + params: Params$Resource$Organizationsecuritypolicies$Copyrules, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + copyRules(callback: BodyResponseCallback): void; + copyRules( paramsOrCallback?: - | Params$Resource$Nodetemplates$Insert + | Params$Resource$Organizationsecuritypolicies$Copyrules | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -152169,12 +161989,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Insert; + {}) as Params$Resource$Organizationsecuritypolicies$Copyrules; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Insert; + params = {} as Params$Resource$Organizationsecuritypolicies$Copyrules; options = {}; } @@ -152189,7 +162009,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/nodeTemplates' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/copyRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -152197,8 +162017,8 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { @@ -152212,8 +162032,11 @@ export namespace compute_preview { } /** - * Retrieves a list of node templates available to the specified - * project. + * Deletes the specified policy. + * + * Use this API to remove Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to remove firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.delete instead. * @example * ```js * // Before running the sample: @@ -152237,7 +162060,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -152246,104 +162068,58 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. + * const res = await compute.organizationSecurityPolicies.delete({ + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate commitments. * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Name of the security policy to delete. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -152359,53 +162135,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Nodetemplates$List, + delete( + params: Params$Resource$Organizationsecuritypolicies$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Nodetemplates$List, + delete( + params?: Params$Resource$Organizationsecuritypolicies$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Nodetemplates$List, + ): Promise>; + delete( + params: Params$Resource$Organizationsecuritypolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Nodetemplates$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizationsecuritypolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Nodetemplates$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizationsecuritypolicies$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Nodetemplates$List - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$List; + {}) as Params$Resource$Organizationsecuritypolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$List; + params = {} as Params$Resource$Organizationsecuritypolicies$Delete; options = {}; } @@ -152420,31 +162195,34 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/nodeTemplates' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * List all of the ordered rules present in a single specified policy. + * + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is now + * disabled for most organizations. Use firewallPolicies.get instead. * @example * ```js * // Before running the sample: @@ -152468,6 +162246,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -152476,33 +162255,35 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.setIamPolicy({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, + * const res = await compute.organizationSecurityPolicies.get({ + * // Name of the security policy to get. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "params": {}, + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, + * // "region": "my_region", + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] * // } * } * @@ -152518,52 +162299,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setIamPolicy( - params: Params$Resource$Nodetemplates$Setiampolicy, + get( + params: Params$Resource$Organizationsecuritypolicies$Get, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Nodetemplates$Setiampolicy, + get( + params?: Params$Resource$Organizationsecuritypolicies$Get, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Nodetemplates$Setiampolicy, + ): Promise>; + get( + params: Params$Resource$Organizationsecuritypolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Nodetemplates$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationsecuritypolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Nodetemplates$Setiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationsecuritypolicies$Get, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Nodetemplates$Setiampolicy - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Setiampolicy; + {}) as Params$Resource$Organizationsecuritypolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Setiampolicy; + params = {} as Params$Resource$Organizationsecuritypolicies$Get; options = {}; } @@ -152578,30 +162360,35 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Gets an association with the specified name. + * + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.getAssociation + * instead. * @example * ```js * // Before running the sample: @@ -152634,28 +162421,23 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.testIamPermissions({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name or id of the resource for this request. - * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * const res = await compute.organizationSecurityPolicies.getAssociation({ + * // The name of the association to get from the security policy. + * name: 'placeholder-value', + * // Name of the security policy to which the queried rule belongs. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "attachmentId": "my_attachmentId", + * // "displayName": "my_displayName", + * // "excludedFolders": [], + * // "excludedProjects": [], + * // "name": "my_name", + * // "securityPolicyId": "my_securityPolicyId", + * // "shortName": "my_shortName" * // } * } * @@ -152671,56 +162453,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - testIamPermissions( - params: Params$Resource$Nodetemplates$Testiampermissions, + getAssociation( + params: Params$Resource$Organizationsecuritypolicies$Getassociation, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Nodetemplates$Testiampermissions, + getAssociation( + params?: Params$Resource$Organizationsecuritypolicies$Getassociation, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Nodetemplates$Testiampermissions, + ): Promise>; + getAssociation( + params: Params$Resource$Organizationsecuritypolicies$Getassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Nodetemplates$Testiampermissions, + getAssociation( + params: Params$Resource$Organizationsecuritypolicies$Getassociation, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Nodetemplates$Testiampermissions, - callback: BodyResponseCallback + getAssociation( + params: Params$Resource$Organizationsecuritypolicies$Getassociation, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + getAssociation( + callback: BodyResponseCallback ): void; - testIamPermissions( + getAssociation( paramsOrCallback?: - | Params$Resource$Nodetemplates$Testiampermissions - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Getassociation + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Testiampermissions; + {}) as Params$Resource$Organizationsecuritypolicies$Getassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Testiampermissions; + params = + {} as Params$Resource$Organizationsecuritypolicies$Getassociation; options = {}; } @@ -152735,381 +162518,34 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/getAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Nodetemplates$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Nodetemplates$Delete extends StandardParameters { - /** - * Name of the NodeTemplate resource to delete. - */ - nodeTemplate?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - } - export interface Params$Resource$Nodetemplates$Get extends StandardParameters { - /** - * Name of the node template to return. - */ - nodeTemplate?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Nodetemplates$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Nodetemplates$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeTemplate; - } - export interface Params$Resource$Nodetemplates$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Nodetemplates$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetPolicyRequest; - } - export interface Params$Resource$Nodetemplates$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Nodetypes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves an aggregated list of node types. + * Gets a rule at the specified priority. * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is now + * disabled for most organizations. Use firewallPolicies.getRule instead. * @example * ```js * // Before running the sample: @@ -153142,114 +162578,27 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTypes.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Indicates whether every visible scope for each scope type (zone, region, - * // global) should be included in the response. For new resource types added - * // after this field, the flag has no effect as new resource types will always - * // include every visible scope for each scope type in response. For resource - * // types which predate this field, if this flag is omitted or false, only - * // scopes of the scope types where the resource type is expected to be found - * // will be included. - * includeAllScopes: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * const res = await compute.organizationSecurityPolicies.getRule({ + * // The priority of the rule to get from the security policy. + * priority: 'placeholder-value', + * // Name of the security policy to which the queried rule belongs. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": {}, + * // "action": "my_action", + * // "description": "my_description", + * // "headerAction": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {} * // } * } * @@ -153265,56 +162614,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - aggregatedList( - params: Params$Resource$Nodetypes$Aggregatedlist, + getRule( + params: Params$Resource$Organizationsecuritypolicies$Getrule, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Nodetypes$Aggregatedlist, + getRule( + params?: Params$Resource$Organizationsecuritypolicies$Getrule, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Nodetypes$Aggregatedlist, + ): Promise>; + getRule( + params: Params$Resource$Organizationsecuritypolicies$Getrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Nodetypes$Aggregatedlist, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Nodetypes$Aggregatedlist, - callback: BodyResponseCallback + getRule( + params: Params$Resource$Organizationsecuritypolicies$Getrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + getRule( + params: Params$Resource$Organizationsecuritypolicies$Getrule, + callback: BodyResponseCallback ): void; - aggregatedList( + getRule(callback: BodyResponseCallback): void; + getRule( paramsOrCallback?: - | Params$Resource$Nodetypes$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Getrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetypes$Aggregatedlist; + {}) as Params$Resource$Organizationsecuritypolicies$Getrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetypes$Aggregatedlist; + params = {} as Params$Resource$Organizationsecuritypolicies$Getrule; options = {}; } @@ -153328,7 +162674,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/aggregated/nodeTypes' + rootUrl + + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/getRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -153336,22 +162683,27 @@ export namespace compute_preview { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified node type. + * Creates a new policy in the specified organization using the data included + * in the request. + * + * Use this API to add Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to add firewall policies. This usage is now + * disabled for most organizations. Use firewallPolicies.insert instead. * @example * ```js * // Before running the sample: @@ -153375,7 +162727,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -153384,31 +162735,87 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTypes.get({ - * // Name of the node type to return. - * nodeType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.organizationSecurityPolicies.insert({ + * // Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" + * // if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the + * // parent is an organization. + * parentId: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "params": {}, + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, + * // "region": "my_region", + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "cpuPlatform": "my_cpuPlatform", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "guestCpus": 0, + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "localSsdGb": 0, - * // "maxVms": 0, - * // "memoryMb": 0, * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -153425,51 +162832,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Nodetypes$Get, + insert( + params: Params$Resource$Organizationsecuritypolicies$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Nodetypes$Get, + insert( + params?: Params$Resource$Organizationsecuritypolicies$Insert, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Nodetypes$Get, + ): Promise>; + insert( + params: Params$Resource$Organizationsecuritypolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodetypes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Organizationsecuritypolicies$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodetypes$Get, - callback: BodyResponseCallback + insert( + params: Params$Resource$Organizationsecuritypolicies$Insert, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Nodetypes$Get - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodetypes$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationsecuritypolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetypes$Get; + params = {} as Params$Resource$Organizationsecuritypolicies$Insert; options = {}; } @@ -153483,32 +162891,35 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/nodeTypes/{nodeType}' + rootUrl + '/compute/v1/locations/global/securityPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'nodeType'], - pathParams: ['nodeType', 'project', 'zone'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of node types available to the specified - * project. + * List all the policies that have been configured for the specified + * organization. + * + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is now + * disabled for most organizations. Use firewallPolicies.list instead. * @example * ```js * // Before running the sample: @@ -153541,7 +162952,7 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTypes.list({ + * const res = await compute.organizationSecurityPolicies.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -153623,11 +163034,8 @@ export namespace compute_preview { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Parent ID for this request. + * parentId: 'placeholder-value', * }); * console.log(res.data); * @@ -153637,7 +163045,6 @@ export namespace compute_preview { * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", * // "warning": {} * // } * } @@ -153655,51 +163062,52 @@ export namespace compute_preview { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Nodetypes$List, + params: Params$Resource$Organizationsecuritypolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Nodetypes$List, + params?: Params$Resource$Organizationsecuritypolicies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Nodetypes$List, + params: Params$Resource$Organizationsecuritypolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Nodetypes$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Organizationsecuritypolicies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Nodetypes$List, - callback: BodyResponseCallback + params: Params$Resource$Organizationsecuritypolicies$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Nodetypes$List - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodetypes$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationsecuritypolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetypes$List; + params = {} as Params$Resource$Organizationsecuritypolicies$List; options = {}; } @@ -153713,7 +163121,7 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/projects/{project}/zones/{zone}/nodeTypes' + rootUrl + '/compute/v1/locations/global/securityPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -153721,261 +163129,26 @@ export namespace compute_preview { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Nodetypes$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Indicates whether every visible scope for each scope type (zone, region, - * global) should be included in the response. For new resource types added - * after this field, the flag has no effect as new resource types will always - * include every visible scope for each scope type in response. For resource - * types which predate this field, if this flag is omitted or false, only - * scopes of the scope types where the resource type is expected to be found - * will be included. - */ - includeAllScopes?: boolean; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Nodetypes$Get extends StandardParameters { - /** - * Name of the node type to return. - */ - nodeType?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Nodetypes$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * You can also filter nested fields. For example, you could specify - * `scheduling.automaticRestart = false` to include instances only - * if they are not scheduled for automatic restarts. You can use filtering - * on nested fields to filter based onresource labels. - * - * To filter on multiple expressions, provide each separate expression within - * parentheses. For example: - * ``` - * (scheduling.automaticRestart = true) - * (cpuPlatform = "Intel Skylake") - * ``` - * By default, each expression is an `AND` expression. However, you - * can include `AND` and `OR` expressions explicitly. - * For example: - * ``` - * (cpuPlatform = "Intel Skylake") OR - * (cpuPlatform = "Intel Broadwell") AND - * (scheduling.automaticRestart = true) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The maximum number of results per page that should be returned. - * If the number of available results is larger than `maxResults`, - * Compute Engine returns a `nextPageToken` that can be used to get - * the next page of results in subsequent list requests. Acceptable values are - * `0` to `500`, inclusive. (Default: `500`) - */ - maxResults?: number; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. - * - * You can also sort results in descending order based on the creation - * timestamp using `orderBy="creationTimestamp desc"`. This sorts - * results based on the `creationTimestamp` field in - * reverse chronological order (newest result first). Use this to sort - * resources like operations so that the newest operation is returned first. - * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. - */ - orderBy?: string; - /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. - */ - pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - - export class Resource$Organizationsecuritypolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Inserts an association for the specified security policy. - * - * This has billing implications. Projects in the hierarchy with effective - * hierarchical security policies will be automatically enrolled into Cloud - * Armor Enterprise if not already enrolled. + * Lists associations of a specified target, i.e., organization or folder. * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.addAssociation + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.listAssociations * instead. * @example * ```js @@ -154000,6 +163173,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -154008,75 +163182,17 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.addAssociation({ - * // Indicates whether or not to replace it if an association of the attachment - * // already exists. This is false by default, in which case an error will be - * // returned if an association already exists. - * replaceExistingAssociation: 'placeholder-value', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "attachmentId": "my_attachmentId", - * // "displayName": "my_displayName", - * // "excludedFolders": [], - * // "excludedProjects": [], - * // "name": "my_name", - * // "securityPolicyId": "my_securityPolicyId", - * // "shortName": "my_shortName" - * // } - * }, + * const res = await compute.organizationSecurityPolicies.listAssociations({ + * // The target resource to list associations. It is an organization, or a + * // folder. + * targetResource: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "associations": [], + * // "kind": "my_kind" * // } * } * @@ -154092,53 +163208,62 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addAssociation( - params: Params$Resource$Organizationsecuritypolicies$Addassociation, + listAssociations( + params: Params$Resource$Organizationsecuritypolicies$Listassociations, options: StreamMethodOptions ): Promise>; - addAssociation( - params?: Params$Resource$Organizationsecuritypolicies$Addassociation, + listAssociations( + params?: Params$Resource$Organizationsecuritypolicies$Listassociations, options?: MethodOptions - ): Promise>; - addAssociation( - params: Params$Resource$Organizationsecuritypolicies$Addassociation, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listAssociations( + params: Params$Resource$Organizationsecuritypolicies$Listassociations, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addAssociation( - params: Params$Resource$Organizationsecuritypolicies$Addassociation, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listAssociations( + params: Params$Resource$Organizationsecuritypolicies$Listassociations, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addAssociation( - params: Params$Resource$Organizationsecuritypolicies$Addassociation, - callback: BodyResponseCallback + listAssociations( + params: Params$Resource$Organizationsecuritypolicies$Listassociations, + callback: BodyResponseCallback ): void; - addAssociation(callback: BodyResponseCallback): void; - addAssociation( + listAssociations( + callback: BodyResponseCallback + ): void; + listAssociations( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Addassociation - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Listassociations + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Addassociation; + {}) as Params$Resource$Organizationsecuritypolicies$Listassociations; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizationsecuritypolicies$Addassociation; + {} as Params$Resource$Organizationsecuritypolicies$Listassociations; options = {}; } @@ -154153,34 +163278,33 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/addAssociation' + '/compute/v1/locations/global/securityPolicies/listAssociations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Inserts a rule into a security policy. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.addRule instead. + * Gets the current list of preconfigured Web Application Firewall (WAF) + * expressions. * @example * ```js * // Before running the sample: @@ -154204,6 +163328,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -154212,75 +163337,97 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.addRule({ - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "headerAction": {}, - * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {} - * // } - * }, - * }); + * const res = + * await compute.organizationSecurityPolicies.listPreconfiguredExpressionSets({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Parent ID for this request. + * parentId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "preconfiguredExpressionSets": {} * // } * } * @@ -154296,52 +163443,62 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addRule( - params: Params$Resource$Organizationsecuritypolicies$Addrule, + listPreconfiguredExpressionSets( + params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, options: StreamMethodOptions ): Promise>; - addRule( - params?: Params$Resource$Organizationsecuritypolicies$Addrule, + listPreconfiguredExpressionSets( + params?: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, options?: MethodOptions - ): Promise>; - addRule( - params: Params$Resource$Organizationsecuritypolicies$Addrule, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listPreconfiguredExpressionSets( + params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Organizationsecuritypolicies$Addrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listPreconfiguredExpressionSets( + params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Organizationsecuritypolicies$Addrule, - callback: BodyResponseCallback + listPreconfiguredExpressionSets( + params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + callback: BodyResponseCallback ): void; - addRule(callback: BodyResponseCallback): void; - addRule( + listPreconfiguredExpressionSets( + callback: BodyResponseCallback + ): void; + listPreconfiguredExpressionSets( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Addrule - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Addrule; + {}) as Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Addrule; + params = + {} as Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets; options = {}; } @@ -154356,35 +163513,36 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/addRule' + '/compute/v1/locations/global/securityPolicies/listPreconfiguredExpressionSets' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Copies rules to the specified security policy. + * Moves the specified security policy. * * Use this API to modify Cloud Armor policies. Previously, alpha and beta * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.cloneRules - * instead. + * now disabled for most organizations. Use firewallPolicies.move instead. * @example * ```js * // Before running the sample: @@ -154416,7 +163574,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.copyRules({ + * const res = await compute.organizationSecurityPolicies.move({ + * // The new parent of the security policy. + * parentId: 'placeholder-value', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -154433,8 +163593,6 @@ export namespace compute_preview { * requestId: 'placeholder-value', * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * // The security policy from which to copy rules. - * sourceSecurityPolicy: 'placeholder-value', * }); * console.log(res.data); * @@ -154443,6 +163601,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -154484,32 +163643,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - copyRules( - params: Params$Resource$Organizationsecuritypolicies$Copyrules, + move( + params: Params$Resource$Organizationsecuritypolicies$Move, options: StreamMethodOptions ): Promise>; - copyRules( - params?: Params$Resource$Organizationsecuritypolicies$Copyrules, + move( + params?: Params$Resource$Organizationsecuritypolicies$Move, options?: MethodOptions ): Promise>; - copyRules( - params: Params$Resource$Organizationsecuritypolicies$Copyrules, + move( + params: Params$Resource$Organizationsecuritypolicies$Move, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - copyRules( - params: Params$Resource$Organizationsecuritypolicies$Copyrules, + move( + params: Params$Resource$Organizationsecuritypolicies$Move, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - copyRules( - params: Params$Resource$Organizationsecuritypolicies$Copyrules, + move( + params: Params$Resource$Organizationsecuritypolicies$Move, callback: BodyResponseCallback ): void; - copyRules(callback: BodyResponseCallback): void; - copyRules( + move(callback: BodyResponseCallback): void; + move( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Copyrules + | Params$Resource$Organizationsecuritypolicies$Move | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -154524,12 +163683,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Copyrules; + {}) as Params$Resource$Organizationsecuritypolicies$Move; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Copyrules; + params = {} as Params$Resource$Organizationsecuritypolicies$Move; options = {}; } @@ -154544,7 +163703,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/copyRules' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/move' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -154567,196 +163726,11 @@ export namespace compute_preview { } /** - * Deletes the specified policy. - * - * Use this API to remove Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to remove firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.delete instead. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.organizationSecurityPolicies.delete({ - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Name of the security policy to delete. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - delete( - params: Params$Resource$Organizationsecuritypolicies$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Organizationsecuritypolicies$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Organizationsecuritypolicies$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Organizationsecuritypolicies$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Organizationsecuritypolicies$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * List all of the ordered rules present in a single specified policy. - * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is now - * disabled for most organizations. Use firewallPolicies.get instead. + * Patches the specified policy with the data included in the request. + * + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.patch instead. * @example * ```js * // Before running the sample: @@ -154780,7 +163754,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -154789,35 +163762,86 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.get({ - * // Name of the security policy to get. + * const res = await compute.organizationSecurityPolicies.patch({ + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "params": {}, + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, + * // "region": "my_region", + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, * // "description": "my_description", - * // "fingerprint": "my_fingerprint", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, * // "name": "my_name", - * // "params": {}, - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", - * // "rules": [], * // "selfLink": "my_selfLink", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -154833,53 +163857,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Organizationsecuritypolicies$Get, + patch( + params: Params$Resource$Organizationsecuritypolicies$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Organizationsecuritypolicies$Get, + patch( + params?: Params$Resource$Organizationsecuritypolicies$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Organizationsecuritypolicies$Get, + ): Promise>; + patch( + params: Params$Resource$Organizationsecuritypolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizationsecuritypolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Organizationsecuritypolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizationsecuritypolicies$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Organizationsecuritypolicies$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Get - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Get; + {}) as Params$Resource$Organizationsecuritypolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Get; + params = {} as Params$Resource$Organizationsecuritypolicies$Patch; options = {}; } @@ -154896,7 +163919,7 @@ export namespace compute_preview { rootUrl + '/compute/v1/locations/global/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options @@ -154907,21 +163930,21 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets an association with the specified name. + * Patches a rule at the specified priority. * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.getAssociation + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.patchRule * instead. * @example * ```js @@ -154946,7 +163969,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -154955,23 +163977,78 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.getAssociation({ - * // The name of the association to get from the security policy. - * name: 'placeholder-value', - * // Name of the security policy to which the queried rule belongs. + * const res = await compute.organizationSecurityPolicies.patchRule({ + * // The priority of the rule to patch. + * priority: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "headerAction": {}, + * // "kind": "my_kind", + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "attachmentId": "my_attachmentId", - * // "displayName": "my_displayName", - * // "excludedFolders": [], - * // "excludedProjects": [], + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", * // "name": "my_name", - * // "securityPolicyId": "my_securityPolicyId", - * // "shortName": "my_shortName" + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -154987,57 +164064,52 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getAssociation( - params: Params$Resource$Organizationsecuritypolicies$Getassociation, + patchRule( + params: Params$Resource$Organizationsecuritypolicies$Patchrule, options: StreamMethodOptions ): Promise>; - getAssociation( - params?: Params$Resource$Organizationsecuritypolicies$Getassociation, + patchRule( + params?: Params$Resource$Organizationsecuritypolicies$Patchrule, options?: MethodOptions - ): Promise>; - getAssociation( - params: Params$Resource$Organizationsecuritypolicies$Getassociation, + ): Promise>; + patchRule( + params: Params$Resource$Organizationsecuritypolicies$Patchrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getAssociation( - params: Params$Resource$Organizationsecuritypolicies$Getassociation, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getAssociation( - params: Params$Resource$Organizationsecuritypolicies$Getassociation, - callback: BodyResponseCallback + patchRule( + params: Params$Resource$Organizationsecuritypolicies$Patchrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getAssociation( - callback: BodyResponseCallback + patchRule( + params: Params$Resource$Organizationsecuritypolicies$Patchrule, + callback: BodyResponseCallback ): void; - getAssociation( + patchRule(callback: BodyResponseCallback): void; + patchRule( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Getassociation - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Patchrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Getassociation; + {}) as Params$Resource$Organizationsecuritypolicies$Patchrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Organizationsecuritypolicies$Getassociation; + params = {} as Params$Resource$Organizationsecuritypolicies$Patchrule; options = {}; } @@ -155052,9 +164124,9 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/getAssociation' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/patchRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options @@ -155065,21 +164137,22 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a rule at the specified priority. + * Removes an association for the specified security policy. * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is now - * disabled for most organizations. Use firewallPolicies.getRule instead. + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.removeAssociation + * instead. * @example * ```js * // Before running the sample: @@ -155103,7 +164176,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -155112,27 +164184,60 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.getRule({ - * // The priority of the rule to get from the security policy. - * priority: 'placeholder-value', - * // Name of the security policy to which the queried rule belongs. + * const res = await compute.organizationSecurityPolicies.removeAssociation({ + * // Name for the attachment that will be removed. + * name: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "action": "my_action", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "headerAction": {}, + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {} + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -155148,53 +164253,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getRule( - params: Params$Resource$Organizationsecuritypolicies$Getrule, + removeAssociation( + params: Params$Resource$Organizationsecuritypolicies$Removeassociation, options: StreamMethodOptions ): Promise>; - getRule( - params?: Params$Resource$Organizationsecuritypolicies$Getrule, + removeAssociation( + params?: Params$Resource$Organizationsecuritypolicies$Removeassociation, options?: MethodOptions - ): Promise>; - getRule( - params: Params$Resource$Organizationsecuritypolicies$Getrule, + ): Promise>; + removeAssociation( + params: Params$Resource$Organizationsecuritypolicies$Removeassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Organizationsecuritypolicies$Getrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + removeAssociation( + params: Params$Resource$Organizationsecuritypolicies$Removeassociation, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Organizationsecuritypolicies$Getrule, - callback: BodyResponseCallback + removeAssociation( + params: Params$Resource$Organizationsecuritypolicies$Removeassociation, + callback: BodyResponseCallback ): void; - getRule(callback: BodyResponseCallback): void; - getRule( + removeAssociation(callback: BodyResponseCallback): void; + removeAssociation( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Getrule - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Removeassociation + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Getrule; + {}) as Params$Resource$Organizationsecuritypolicies$Removeassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Getrule; + params = + {} as Params$Resource$Organizationsecuritypolicies$Removeassociation; options = {}; } @@ -155209,9 +164314,9 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/getRule' + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/removeAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '2026-10-01-preview', }, options @@ -155222,22 +164327,22 @@ export namespace compute_preview { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new policy in the specified organization using the data included - * in the request. + * Deletes a rule at the specified priority. * - * Use this API to add Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to add firewall policies. This usage is now - * disabled for most organizations. Use firewallPolicies.insert instead. + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.removeRule + * instead. * @example * ```js * // Before running the sample: @@ -155269,11 +164374,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.insert({ - * // Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" - * // if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the - * // parent is an organization. - * parentId: 'placeholder-value', + * const res = await compute.organizationSecurityPolicies.removeRule({ + * // The priority of the rule to remove from the security policy. + * priority: 'placeholder-value', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -155288,34 +164391,8 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "name": "my_name", - * // "params": {}, - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, - * // "region": "my_region", - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] - * // } - * }, + * // Name of the security policy to update. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * @@ -155324,6 +164401,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -155365,32 +164443,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - insert( - params: Params$Resource$Organizationsecuritypolicies$Insert, + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Organizationsecuritypolicies$Insert, + removeRule( + params?: Params$Resource$Organizationsecuritypolicies$Removerule, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Organizationsecuritypolicies$Insert, + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Organizationsecuritypolicies$Insert, + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Organizationsecuritypolicies$Insert, + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + removeRule(callback: BodyResponseCallback): void; + removeRule( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Insert + | Params$Resource$Organizationsecuritypolicies$Removerule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -155405,12 +164483,12 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Insert; + {}) as Params$Resource$Organizationsecuritypolicies$Removerule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Insert; + params = {} as Params$Resource$Organizationsecuritypolicies$Removerule; options = {}; } @@ -155424,7 +164502,8 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + '/compute/v1/locations/global/securityPolicies' + rootUrl + + '/compute/v1/locations/global/securityPolicies/{securityPolicy}/removeRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '2026-10-01-preview', @@ -155432,8 +164511,8 @@ export namespace compute_preview { options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { @@ -155445,244 +164524,513 @@ export namespace compute_preview { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Organizationsecuritypolicies$Addassociation extends StandardParameters { /** - * List all the policies that have been configured for the specified - * organization. + * Indicates whether or not to replace it if an association of the attachment + * already exists. This is false by default, in which case an error will be + * returned if an association already exists. + */ + replaceExistingAssociation?: boolean; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is now - * disabled for most organizations. Use firewallPolicies.list instead. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * const {google} = require('googleapis'); - * const compute = google.compute('preview'); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyAssociation; + } + export interface Params$Resource$Organizationsecuritypolicies$Addrule extends StandardParameters { + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', - * ], - * }); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyRule; + } + export interface Params$Resource$Organizationsecuritypolicies$Copyrules extends StandardParameters { + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Do the magic - * const res = await compute.organizationSecurityPolicies.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Parent ID for this request. - * parentId: 'placeholder-value', - * }); - * console.log(res.data); + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + /** + * The security policy from which to copy rules. + */ + sourceSecurityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Delete extends StandardParameters { + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name of the security policy to delete. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Get extends StandardParameters { + /** + * Name of the security policy to get. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Getassociation extends StandardParameters { + /** + * The name of the association to get from the security policy. + */ + name?: string; + /** + * Name of the security policy to which the queried rule belongs. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Getrule extends StandardParameters { + /** + * The priority of the rule to get from the security policy. + */ + priority?: number; + /** + * Name of the security policy to which the queried rule belongs. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Insert extends StandardParameters { + /** + * Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" + * if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the + * parent is an organization. + */ + parentId?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicy; + } + export interface Params$Resource$Organizationsecuritypolicies$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Parent ID for this request. + */ + parentId?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Listassociations extends StandardParameters { + /** + * The target resource to list associations. It is an organization, or a + * folder. + */ + targetResource?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Parent ID for this request. + */ + parentId?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Move extends StandardParameters { + /** + * The new parent of the security policy. + */ + parentId?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Patch extends StandardParameters { + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicy; + } + export interface Params$Resource$Organizationsecuritypolicies$Patchrule extends StandardParameters { + /** + * The priority of the rule to patch. + */ + priority?: number; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * // Example response - * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} - * // } - * } + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyRule; + } + export interface Params$Resource$Organizationsecuritypolicies$Removeassociation extends StandardParameters { + /** + * Name for the attachment that will be removed. + */ + name?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. * - * ``` + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore the second request. This + * prevents clients from accidentally creating duplicate commitments. * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - list( - params: Params$Resource$Organizationsecuritypolicies$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Organizationsecuritypolicies$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Organizationsecuritypolicies$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Organizationsecuritypolicies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Organizationsecuritypolicies$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Removerule extends StandardParameters { + /** + * The priority of the rule to remove from the security policy. + */ + priority?: number; + /** + * An optional request ID to identify requests. Specify a unique request ID so + * that if you must retry your request, the server will know to ignore the + * request if it has already been completed. + * + * 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 can check if original operation with the same + * request ID was received, and if so, will ignore 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). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/compute/v1/locations/global/securityPolicies' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '2026-10-01-preview', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Organizationzonevmextensionpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Lists associations of a specified target, i.e., organization or folder. - * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.listAssociations - * instead. + * Deletes a specified zone VM extension policy within an organization. * @example * ```js * // Before running the sample: @@ -155706,7 +165054,6 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -155715,17 +165062,62 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.listAssociations({ - * // The target resource to list associations. It is an organization, or a - * // folder. - * targetResource: 'placeholder-value', + * const res = await compute.organizationZoneVmExtensionPolicies.delete({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // An optional request ID to identify requests. Specify a unique request ID so + * // that if you must retry your request, the server will know to ignore the + * // request if it has already been completed. + * // + * // 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 can check if original operation with the same + * // request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * // Name of the zone VM extension policy to delete. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "associations": [], - * // "kind": "my_kind" + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -155741,62 +165133,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listAssociations( - params: Params$Resource$Organizationsecuritypolicies$Listassociations, + delete( + params: Params$Resource$Organizationzonevmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; - listAssociations( - params?: Params$Resource$Organizationsecuritypolicies$Listassociations, + delete( + params?: Params$Resource$Organizationzonevmextensionpolicies$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listAssociations( - params: Params$Resource$Organizationsecuritypolicies$Listassociations, + ): Promise>; + delete( + params: Params$Resource$Organizationzonevmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listAssociations( - params: Params$Resource$Organizationsecuritypolicies$Listassociations, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listAssociations( - params: Params$Resource$Organizationsecuritypolicies$Listassociations, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizationzonevmextensionpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listAssociations( - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizationzonevmextensionpolicies$Delete, + callback: BodyResponseCallback ): void; - listAssociations( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Listassociations - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Listassociations; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizationsecuritypolicies$Listassociations; + {} as Params$Resource$Organizationzonevmextensionpolicies$Delete; options = {}; } @@ -155811,33 +165194,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/listAssociations' + '/compute/v1/{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['organization', 'zone', 'vmExtensionPolicy'], + pathParams: ['organization', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Gets the current list of preconfigured Web Application Firewall (WAF) - * expressions. + * Retrieves details of a specific zone VM extension policy within an + * organization. * @example * ```js * // Before running the sample: @@ -155870,97 +165251,32 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await compute.organizationSecurityPolicies.listPreconfiguredExpressionSets({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The operator - * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. - * // - * // For example, if you are filtering Compute Engine instances, you can - * // exclude instances named `example-instance` by specifying - * // `name != example-instance`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // You can also filter nested fields. For example, you could specify - * // `scheduling.automaticRestart = false` to include instances only - * // if they are not scheduled for automatic restarts. You can use filtering - * // on nested fields to filter based onresource labels. - * // - * // To filter on multiple expressions, provide each separate expression within - * // parentheses. For example: - * // ``` - * // (scheduling.automaticRestart = true) - * // (cpuPlatform = "Intel Skylake") - * // ``` - * // By default, each expression is an `AND` expression. However, you - * // can include `AND` and `OR` expressions explicitly. - * // For example: - * // ``` - * // (cpuPlatform = "Intel Skylake") OR - * // (cpuPlatform = "Intel Broadwell") AND - * // (scheduling.automaticRestart = true) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The maximum number of results per page that should be returned. - * // If the number of available results is larger than `maxResults`, - * // Compute Engine returns a `nextPageToken` that can be used to get - * // the next page of results in subsequent list requests. Acceptable values are - * // `0` to `500`, inclusive. (Default: `500`) - * maxResults: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. - * // - * // You can also sort results in descending order based on the creation - * // timestamp using `orderBy="creationTimestamp desc"`. This sorts - * // results based on the `creationTimestamp` field in - * // reverse chronological order (newest result first). Use this to sort - * // resources like operations so that the newest operation is returned first. - * // - * // Currently, only sorting by `name` or - * // `creationTimestamp desc` is supported. - * orderBy: 'placeholder-value', - * // Specifies a page token to use. Set `pageToken` to the - * // `nextPageToken` returned by a previous list request to get - * // the next page of results. - * pageToken: 'placeholder-value', - * // Parent ID for this request. - * parentId: 'placeholder-value', - * }); + * const res = await compute.organizationZoneVmExtensionPolicies.get({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the VM extension policy resource to return. + * vmExtensionPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); * console.log(res.data); * * // Example response * // { - * // "preconfiguredExpressionSets": {} + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -155976,62 +165292,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listPreconfiguredExpressionSets( - params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + get( + params: Params$Resource$Organizationzonevmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; - listPreconfiguredExpressionSets( - params?: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + get( + params?: Params$Resource$Organizationzonevmextensionpolicies$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listPreconfiguredExpressionSets( - params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + ): Promise>; + get( + params: Params$Resource$Organizationzonevmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listPreconfiguredExpressionSets( - params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listPreconfiguredExpressionSets( - params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationzonevmextensionpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listPreconfiguredExpressionSets( - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationzonevmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - listPreconfiguredExpressionSets( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets; + params = {} as Params$Resource$Organizationzonevmextensionpolicies$Get; options = {}; } @@ -156046,7 +165353,7 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/listPreconfiguredExpressionSets' + '/compute/v1/{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '2026-10-01-preview', @@ -156054,28 +165361,22 @@ export namespace compute_preview { options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['organization', 'zone', 'vmExtensionPolicy'], + pathParams: ['organization', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Moves the specified security policy. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.move instead. + * Retrieves details of a specific VM extension within an organization. * @example * ```js * // Before running the sample: @@ -156099,6 +165400,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -156107,59 +165409,20 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.move({ - * // The new parent of the security policy. - * parentId: 'placeholder-value', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * const res = await compute.organizationZoneVmExtensionPolicies.getVmExtension({ + * // Required. Name of the VM extension for this request. + * extensionName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, - * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "versions": [] * // } * } * @@ -156175,52 +165438,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - move( - params: Params$Resource$Organizationsecuritypolicies$Move, + getVmExtension( + params: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, options: StreamMethodOptions ): Promise>; - move( - params?: Params$Resource$Organizationsecuritypolicies$Move, + getVmExtension( + params?: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, options?: MethodOptions - ): Promise>; - move( - params: Params$Resource$Organizationsecuritypolicies$Move, + ): Promise>; + getVmExtension( + params: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - move( - params: Params$Resource$Organizationsecuritypolicies$Move, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - move( - params: Params$Resource$Organizationsecuritypolicies$Move, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, + callback: BodyResponseCallback ): void; - move(callback: BodyResponseCallback): void; - move( + getVmExtension(callback: BodyResponseCallback): void; + getVmExtension( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Move - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$Getvmextension + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Move; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Getvmextension; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Move; + params = + {} as Params$Resource$Organizationzonevmextensionpolicies$Getvmextension; options = {}; } @@ -156235,34 +165500,30 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/move' + '/compute/v1/{+organization}/zones/{zone}/vmExtensions/{extensionName}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone', 'extensionName'], + pathParams: ['extensionName', 'organization', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified policy with the data included in the request. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.patch instead. + * Creates a new zone-level VM extension policy within an organization. * @example * ```js * // Before running the sample: @@ -156294,7 +165555,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.patch({ + * const res = await compute.organizationZoneVmExtensionPolicies.insert({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -156309,34 +165572,27 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, * // "description": "my_description", - * // "fingerprint": "my_fingerprint", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, + * // "managedByGlobal": false, * // "name": "my_name", - * // "params": {}, - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, - * // "region": "my_region", - * // "rules": [], + * // "priority": 0, * // "selfLink": "my_selfLink", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -156347,6 +165603,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -156388,32 +165645,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params: Params$Resource$Organizationzonevmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params?: Params$Resource$Organizationzonevmextensionpolicies$Insert, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params: Params$Resource$Organizationzonevmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params: Params$Resource$Organizationzonevmextensionpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params: Params$Resource$Organizationzonevmextensionpolicies$Insert, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Patch + | Params$Resource$Organizationzonevmextensionpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -156428,12 +165685,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Patch; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Patch; + params = + {} as Params$Resource$Organizationzonevmextensionpolicies$Insert; options = {}; } @@ -156448,16 +165706,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}' + '/compute/v1/{+organization}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone'], + pathParams: ['organization', 'zone'], context: this.context, }; if (callback) { @@ -156471,12 +165729,7 @@ export namespace compute_preview { } /** - * Patches a rule at the specified priority. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.patchRule - * instead. + * Lists all VM extension policies within a specific zone for an organization. * @example * ```js * // Before running the sample: @@ -156500,6 +165753,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -156508,77 +165762,105 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.patchRule({ - * // The priority of the rule to patch. - * priority: 'placeholder-value', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. + * const res = await compute.organizationZoneVmExtensionPolicies.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one 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 can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "headerAction": {}, - * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {} - * // } - * }, + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -156594,52 +165876,54 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchRule( - params: Params$Resource$Organizationsecuritypolicies$Patchrule, + list( + params: Params$Resource$Organizationzonevmextensionpolicies$List, options: StreamMethodOptions ): Promise>; - patchRule( - params?: Params$Resource$Organizationsecuritypolicies$Patchrule, + list( + params?: Params$Resource$Organizationzonevmextensionpolicies$List, options?: MethodOptions - ): Promise>; - patchRule( - params: Params$Resource$Organizationsecuritypolicies$Patchrule, + ): Promise>; + list( + params: Params$Resource$Organizationzonevmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchRule( - params: Params$Resource$Organizationsecuritypolicies$Patchrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizationzonevmextensionpolicies$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patchRule( - params: Params$Resource$Organizationsecuritypolicies$Patchrule, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizationzonevmextensionpolicies$List, + callback: BodyResponseCallback ): void; - patchRule(callback: BodyResponseCallback): void; - patchRule( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Patchrule - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Patchrule; + {}) as Params$Resource$Organizationzonevmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Patchrule; + params = {} as Params$Resource$Organizationzonevmextensionpolicies$List; options = {}; } @@ -156654,35 +165938,31 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/patchRule' + '/compute/v1/{+organization}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone'], + pathParams: ['organization', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Removes an association for the specified security policy. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.removeAssociation - * instead. + * Lists all VM extensions within a specific zone for an organization. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -156706,6 +165986,7 @@ export namespace compute_preview { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -156714,59 +165995,106 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.removeAssociation({ - * // Name for the attachment that will be removed. - * name: 'placeholder-value', - * // An optional request ID to identify requests. Specify a unique request ID so - * // that if you must retry your request, the server will know to ignore the - * // request if it has already been completed. - * // - * // 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 can check if original operation with the same - * // request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * }); + * const res = + * await compute.organizationZoneVmExtensionPolicies.listVmExtensions({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -156782,53 +166110,57 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeAssociation( - params: Params$Resource$Organizationsecuritypolicies$Removeassociation, + listVmExtensions( + params: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, options: StreamMethodOptions ): Promise>; - removeAssociation( - params?: Params$Resource$Organizationsecuritypolicies$Removeassociation, + listVmExtensions( + params?: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, options?: MethodOptions - ): Promise>; - removeAssociation( - params: Params$Resource$Organizationsecuritypolicies$Removeassociation, + ): Promise>; + listVmExtensions( + params: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Organizationsecuritypolicies$Removeassociation, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Organizationsecuritypolicies$Removeassociation, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback ): void; - removeAssociation(callback: BodyResponseCallback): void; - removeAssociation( + listVmExtensions( + callback: BodyResponseCallback + ): void; + listVmExtensions( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Removeassociation - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Removeassociation; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizationsecuritypolicies$Removeassociation; + {} as Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions; options = {}; } @@ -156842,36 +166174,30 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/removeAssociation' + rootUrl + '/compute/v1/{+organization}/zones/{zone}/vmExtensions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone'], + pathParams: ['organization', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a rule at the specified priority. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.removeRule - * instead. + * Modifies an existing zone VM extension policy within an organization. * @example * ```js * // Before running the sample: @@ -156903,9 +166229,9 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.removeRule({ - * // The priority of the rule to remove from the security policy. - * priority: 'placeholder-value', + * const res = await compute.organizationZoneVmExtensionPolicies.update({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // An optional request ID to identify requests. Specify a unique request ID so * // that if you must retry your request, the server will know to ignore the * // request if it has already been completed. @@ -156920,8 +166246,31 @@ export namespace compute_preview { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * // Name of the zone VM extension policy to update. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" + * // } + * }, * }); * console.log(res.data); * @@ -156930,6 +166279,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -156971,32 +166321,32 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params: Params$Resource$Organizationzonevmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; - removeRule( - params?: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params?: Params$Resource$Organizationzonevmextensionpolicies$Update, options?: MethodOptions ): Promise>; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params: Params$Resource$Organizationzonevmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params: Params$Resource$Organizationzonevmextensionpolicies$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params: Params$Resource$Organizationzonevmextensionpolicies$Update, callback: BodyResponseCallback ): void; - removeRule(callback: BodyResponseCallback): void; - removeRule( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Removerule + | Params$Resource$Organizationzonevmextensionpolicies$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -157011,12 +166361,13 @@ export namespace compute_preview { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Removerule; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Removerule; + params = + {} as Params$Resource$Organizationzonevmextensionpolicies$Update; options = {}; } @@ -157031,16 +166382,16 @@ export namespace compute_preview { { url: ( rootUrl + - '/compute/v1/locations/global/securityPolicies/{securityPolicy}/removeRule' + '/compute/v1/{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone', 'vmExtensionPolicy'], + pathParams: ['organization', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { @@ -157054,13 +166405,11 @@ export namespace compute_preview { } } - export interface Params$Resource$Organizationsecuritypolicies$Addassociation extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Delete extends StandardParameters { /** - * Indicates whether or not to replace it if an association of the attachment - * already exists. This is false by default, in which case an error will be - * returned if an association already exists. + * Organization ID for this request. */ - replaceExistingAssociation?: boolean; + organization?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -157078,123 +166427,47 @@ export namespace compute_preview { */ requestId?: string; /** - * Name of the security policy to update. - */ - securityPolicy?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityPolicyAssociation; - } - export interface Params$Resource$Organizationsecuritypolicies$Addrule extends StandardParameters { - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityPolicyRule; - } - export interface Params$Resource$Organizationsecuritypolicies$Copyrules extends StandardParameters { - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name of the security policy to update. + * Name of the zone VM extension policy to delete. */ - securityPolicy?: string; + vmExtensionPolicy?: string; /** - * The security policy from which to copy rules. + * Name of the zone for this request. */ - sourceSecurityPolicy?: string; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Delete extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Get extends StandardParameters { /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Organization ID for this request. */ - requestId?: string; + organization?: string; /** - * Name of the security policy to delete. + * Name of the VM extension policy resource to return. */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Get extends StandardParameters { + vmExtensionPolicy?: string; /** - * Name of the security policy to get. + * Name of the zone for this request. */ - securityPolicy?: string; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Getassociation extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Getvmextension extends StandardParameters { /** - * The name of the association to get from the security policy. + * Required. Name of the VM extension for this request. */ - name?: string; - /** - * Name of the security policy to which the queried rule belongs. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Getrule extends StandardParameters { + extensionName?: string; /** - * The priority of the rule to get from the security policy. + * Organization ID for this request. */ - priority?: number; + organization?: string; /** - * Name of the security policy to which the queried rule belongs. + * Name of the zone for this request. */ - securityPolicy?: string; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Insert extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Insert extends StandardParameters { /** - * Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" - * if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the - * parent is an organization. + * Organization ID for this request. */ - parentId?: string; + organization?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -157211,13 +166484,17 @@ export namespace compute_preview { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$SecurityPolicy; + requestBody?: Schema$VmExtensionPolicy; } - export interface Params$Resource$Organizationsecuritypolicies$List extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -157301,6 +166578,10 @@ export namespace compute_preview { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Organization ID for this request. + */ + organization?: string; /** * Specifies a page token to use. Set `pageToken` to the * `nextPageToken` returned by a previous list request to get @@ -157308,18 +166589,11 @@ export namespace compute_preview { */ pageToken?: string; /** - * Parent ID for this request. - */ - parentId?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Listassociations extends StandardParameters { - /** - * The target resource to list associations. It is an organization, or a - * folder. + * Name of the zone for this request. */ - targetResource?: string; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -157403,6 +166677,10 @@ export namespace compute_preview { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Organization ID for this request. + */ + organization?: string; /** * Specifies a page token to use. Set `pageToken` to the * `nextPageToken` returned by a previous list request to get @@ -157410,15 +166688,15 @@ export namespace compute_preview { */ pageToken?: string; /** - * Parent ID for this request. + * Name of the zone for this request. */ - parentId?: string; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Move extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Update extends StandardParameters { /** - * The new parent of the security policy. + * Organization ID for this request. */ - parentId?: string; + organization?: string; /** * An optional request ID to identify requests. Specify a unique request ID so * that if you must retry your request, the server will know to ignore the @@ -157436,119 +166714,18 @@ export namespace compute_preview { */ requestId?: string; /** - * Name of the security policy to update. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Patch extends StandardParameters { - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityPolicy; - } - export interface Params$Resource$Organizationsecuritypolicies$Patchrule extends StandardParameters { - /** - * The priority of the rule to patch. - */ - priority?: number; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). + * Name of the zone VM extension policy to update. */ - requestId?: string; + vmExtensionPolicy?: string; /** - * Name of the security policy to update. + * Name of the zone for this request. */ - securityPolicy?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$SecurityPolicyRule; - } - export interface Params$Resource$Organizationsecuritypolicies$Removeassociation extends StandardParameters { - /** - * Name for the attachment that will be removed. - */ - name?: string; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Removerule extends StandardParameters { - /** - * The priority of the rule to remove from the security policy. - */ - priority?: number; - /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. - * - * 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 can check if original operation with the same - * request ID was received, and if so, will ignore 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; + requestBody?: Schema$VmExtensionPolicy; } export class Resource$Packetmirrorings { @@ -157869,6 +167046,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -158232,6 +167410,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -158672,6 +167851,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -159756,6 +168936,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -160082,6 +169263,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -160272,6 +169454,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -160453,6 +169636,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -160644,6 +169828,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -161622,6 +170807,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -161819,6 +171005,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -162011,6 +171198,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -162203,6 +171391,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -162397,6 +171586,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -162594,6 +171784,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -163422,6 +172613,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -163607,6 +172799,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -163972,6 +173165,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -164413,6 +173607,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -164597,6 +173792,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -165287,6 +174483,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -165473,6 +174670,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -165847,6 +175045,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -166294,6 +175493,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -166481,6 +175681,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -167056,6 +176257,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -167420,6 +176622,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -167862,6 +177065,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -168227,6 +177431,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -168685,6 +177890,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -169205,6 +178411,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -169884,6 +179091,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -170760,6 +179968,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -171513,6 +180722,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -172230,6 +181440,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -172585,6 +181796,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -172990,6 +182202,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -174082,6 +183295,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -174536,6 +183750,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -175282,6 +184497,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -175794,6 +185010,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -176233,6 +185450,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -176948,6 +186166,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -177142,6 +186361,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -177379,6 +186599,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -177569,6 +186790,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -178157,6 +187379,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -178578,6 +187801,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -178774,6 +187998,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -179127,6 +188352,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -179322,6 +188548,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -179511,6 +188738,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -179707,6 +188935,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -180114,6 +189343,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -180309,6 +189539,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -181880,6 +191111,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -182243,6 +191475,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -182686,6 +191919,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -183377,6 +192611,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -183756,6 +192991,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -184204,6 +193440,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -184576,6 +193813,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -185288,6 +194526,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -185650,6 +194889,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -186091,6 +195331,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -187031,6 +196272,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -187541,6 +196783,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -187980,6 +197223,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -188692,6 +197936,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -188896,6 +198141,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -189302,6 +198548,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -190002,6 +199249,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -190188,6 +199436,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -190392,6 +199641,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -190583,6 +199833,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -190795,6 +200046,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -190978,6 +200230,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -191392,6 +200645,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -192597,6 +201851,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -192796,6 +202051,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -193008,6 +202264,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -193210,6 +202467,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -193419,6 +202677,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -193615,6 +202874,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -193812,6 +203072,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -194022,6 +203283,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -194245,6 +203507,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -194465,6 +203728,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -194664,6 +203928,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -196554,6 +205819,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -197195,6 +206461,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -197421,6 +206688,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -197778,6 +207046,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -198378,6 +207647,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -198893,6 +208163,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -199880,6 +209151,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -200411,6 +209683,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -200997,6 +210270,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -201625,6 +210899,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -201817,6 +211092,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -202015,6 +211291,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -202415,6 +211692,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -203470,6 +212748,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -203687,6 +212966,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -203875,6 +213155,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -204061,6 +213342,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -205064,6 +214346,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -205504,6 +214787,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -205703,6 +214987,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -205916,6 +215201,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -206104,6 +215390,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -206293,6 +215580,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -207639,6 +216927,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -207993,6 +217282,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -209006,6 +218296,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -209426,6 +218717,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -210295,6 +219587,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -210481,6 +219774,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -211020,6 +220314,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -211470,6 +220765,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -211667,6 +220963,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -211841,6 +221138,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -212038,6 +221336,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -212581,6 +221880,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -213150,6 +222450,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -213736,6 +223037,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -214088,6 +223390,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -214736,6 +224039,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -214975,6 +224279,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -215098,6 +224403,161 @@ export namespace compute_preview { } } + /** + * Returns the public encryption key used to encrypt the TLS private key + * before upload. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.regionSslCertificates.fetchEncryptionKey({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "publicKeyset": "my_publicKeyset" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + fetchEncryptionKey( + params: Params$Resource$Regionsslcertificates$Fetchencryptionkey, + options: StreamMethodOptions + ): Promise>; + fetchEncryptionKey( + params?: Params$Resource$Regionsslcertificates$Fetchencryptionkey, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + fetchEncryptionKey( + params: Params$Resource$Regionsslcertificates$Fetchencryptionkey, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchEncryptionKey( + params: Params$Resource$Regionsslcertificates$Fetchencryptionkey, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchEncryptionKey( + params: Params$Resource$Regionsslcertificates$Fetchencryptionkey, + callback: BodyResponseCallback + ): void; + fetchEncryptionKey( + callback: BodyResponseCallback + ): void; + fetchEncryptionKey( + paramsOrCallback?: + | Params$Resource$Regionsslcertificates$Fetchencryptionkey + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Regionsslcertificates$Fetchencryptionkey; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Regionsslcertificates$Fetchencryptionkey; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/sslCertificates/encryptionKey' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Returns the specified SslCertificate resource in the specified region. Get * a list of available SSL certificates by making a list() @@ -215342,6 +224802,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -215727,6 +225188,16 @@ export namespace compute_preview { */ sslCertificate?: string; } + export interface Params$Resource$Regionsslcertificates$Fetchencryptionkey extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } export interface Params$Resource$Regionsslcertificates$Get extends StandardParameters { /** * Project ID for this request. @@ -215944,6 +225415,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -216309,6 +225781,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -216984,6 +226457,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -217489,6 +226963,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -217848,6 +227323,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -218273,6 +227749,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -218676,6 +228153,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -219049,6 +228527,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -219495,6 +228974,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -219690,6 +229170,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -219885,6 +229366,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -220359,6 +229841,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -220718,6 +230201,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -221306,6 +230790,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -221663,6 +231148,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -222094,6 +231580,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -222293,6 +231780,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -224257,6 +233745,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -225252,6 +234741,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -225797,6 +235287,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -226222,6 +235713,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -226418,6 +235910,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -226958,6 +236451,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -227753,6 +237247,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -227951,6 +237446,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -228384,6 +237880,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -229123,6 +238620,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -229561,6 +239059,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -229766,6 +239265,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -230848,6 +240348,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -231363,6 +240864,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -231804,6 +241306,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -232690,6 +242193,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -233039,6 +242543,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -233619,6 +243124,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -233807,6 +243313,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -233990,6 +243497,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -234563,6 +244071,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -234750,6 +244259,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -235446,6 +244956,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -235633,6 +245144,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -235821,6 +245333,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -237039,6 +246552,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -238207,6 +247721,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -238404,6 +247919,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -238602,6 +248118,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -238986,6 +248503,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -239183,6 +248701,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -239381,6 +248900,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -240672,6 +250192,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -241054,6 +250575,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -241803,6 +251325,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -242238,6 +251761,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -242771,6 +252295,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -243449,6 +252974,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -243644,6 +253170,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -243816,6 +253343,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -243997,6 +253525,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -244932,6 +254461,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -245466,6 +254996,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -245916,6 +255447,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -246810,6 +256342,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -247374,6 +256907,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -247935,6 +257469,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -248283,6 +257818,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -248874,6 +258410,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -249352,6 +258889,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -249475,6 +259013,159 @@ export namespace compute_preview { } } + /** + * Returns the public encryption key used to encrypt the TLS private key + * before upload. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.sslCertificates.fetchEncryptionKey({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "publicKeyset": "my_publicKeyset" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + fetchEncryptionKey( + params: Params$Resource$Sslcertificates$Fetchencryptionkey, + options: StreamMethodOptions + ): Promise>; + fetchEncryptionKey( + params?: Params$Resource$Sslcertificates$Fetchencryptionkey, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + fetchEncryptionKey( + params: Params$Resource$Sslcertificates$Fetchencryptionkey, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchEncryptionKey( + params: Params$Resource$Sslcertificates$Fetchencryptionkey, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + fetchEncryptionKey( + params: Params$Resource$Sslcertificates$Fetchencryptionkey, + callback: BodyResponseCallback + ): void; + fetchEncryptionKey( + callback: BodyResponseCallback + ): void; + fetchEncryptionKey( + paramsOrCallback?: + | Params$Resource$Sslcertificates$Fetchencryptionkey + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Sslcertificates$Fetchencryptionkey; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Sslcertificates$Fetchencryptionkey; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/global/sslCertificates/encryptionKey' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Returns the specified SslCertificate resource. * @example @@ -249713,6 +259404,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -250200,6 +259892,12 @@ export namespace compute_preview { */ sslCertificate?: string; } + export interface Params$Resource$Sslcertificates$Fetchencryptionkey extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + } export interface Params$Resource$Sslcertificates$Get extends StandardParameters { /** * Project ID for this request. @@ -250650,6 +260348,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -251009,6 +260708,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -251675,6 +261375,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -252516,6 +262217,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -253048,6 +262750,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -254054,6 +263757,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -255853,6 +265557,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -256047,6 +265752,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -256605,6 +266311,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -257321,6 +267028,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -257674,6 +267382,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -258607,6 +268316,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -258960,6 +268670,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -259392,6 +269103,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -260022,6 +269734,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -260377,6 +270090,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -260811,6 +270525,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -261003,6 +270718,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -261775,6 +271491,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -262144,6 +271861,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -262586,6 +272304,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -262779,6 +272498,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -262972,6 +272692,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -263165,6 +272886,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -263361,6 +273083,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -263554,6 +273277,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -264456,6 +274180,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -264634,6 +274359,7 @@ export namespace compute_preview { * // "name": "my_name", * // "natPolicy": "my_natPolicy", * // "network": "my_network", + * // "params": {}, * // "securityPolicy": "my_securityPolicy", * // "selfLink": "my_selfLink", * // "zone": "my_zone" @@ -264802,6 +274528,7 @@ export namespace compute_preview { * // "name": "my_name", * // "natPolicy": "my_natPolicy", * // "network": "my_network", + * // "params": {}, * // "securityPolicy": "my_securityPolicy", * // "selfLink": "my_selfLink", * // "zone": "my_zone" @@ -264815,6 +274542,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -265243,6 +274971,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -265941,6 +275670,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -266135,6 +275865,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -266566,6 +276297,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -266745,6 +276477,7 @@ export namespace compute_preview { * // "instances": [], * // "kind": "my_kind", * // "name": "my_name", + * // "params": {}, * // "region": "my_region", * // "securityPolicy": "my_securityPolicy", * // "selfLink": "my_selfLink", @@ -267072,6 +276805,7 @@ export namespace compute_preview { * // "instances": [], * // "kind": "my_kind", * // "name": "my_name", + * // "params": {}, * // "region": "my_region", * // "securityPolicy": "my_securityPolicy", * // "selfLink": "my_selfLink", @@ -267086,6 +276820,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -267510,6 +277245,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -267704,6 +277440,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -267900,6 +277637,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -268097,6 +277835,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -268983,6 +278722,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -269338,6 +279078,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -269758,6 +279499,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -269951,6 +279693,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -270143,6 +279886,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -270336,6 +280080,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -270532,6 +280277,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -271461,6 +281207,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -271816,6 +281563,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -272236,6 +281984,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -272428,6 +282177,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -273372,6 +283122,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -273737,6 +283488,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -274165,6 +283917,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -274922,6 +284675,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -275282,6 +285036,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -275478,6 +285233,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -275914,6 +285670,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -276275,6 +286032,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -277259,6 +287017,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -277774,6 +287533,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -278200,6 +287960,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -279148,6 +288909,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -279334,6 +289096,8 @@ export namespace compute_preview { * // "peerExternalGatewayInterface": 0, * // "peerGcpGateway": "my_peerGcpGateway", * // "peerIp": "my_peerIp", + * // "pqcPhase1": {}, + * // "pqcPhase2": {}, * // "region": "my_region", * // "remoteTrafficSelector": [], * // "router": "my_router", @@ -279515,6 +289279,8 @@ export namespace compute_preview { * // "peerExternalGatewayInterface": 0, * // "peerGcpGateway": "my_peerGcpGateway", * // "peerIp": "my_peerIp", + * // "pqcPhase1": {}, + * // "pqcPhase2": {}, * // "region": "my_region", * // "remoteTrafficSelector": [], * // "router": "my_router", @@ -279535,6 +289301,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -279961,6 +289728,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -280474,6 +290242,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -280834,6 +290603,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -281276,6 +291046,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -281624,6 +291395,529 @@ export namespace compute_preview { requestBody?: Schema$WireGroup; } + export class Resource$Zonefolderoperations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the specified Operations resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneFolderOperations.get({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the Operations resource to return. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Zonefolderoperations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Zonefolderoperations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Zonefolderoperations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Zonefolderoperations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Zonefolderoperations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Zonefolderoperations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zonefolderoperations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zonefolderoperations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/{+folder}/zones/{zone}/operations/{operation}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['folder', 'zone', 'operation'], + pathParams: ['folder', 'operation', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of Operation resources contained within the specified + * folder. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneFolderOperations.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the zone for request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Zonefolderoperations$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Zonefolderoperations$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Zonefolderoperations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Zonefolderoperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Zonefolderoperations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Zonefolderoperations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zonefolderoperations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zonefolderoperations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/v1/{+folder}/zones/{zone}/operations' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['folder', 'zone'], + pathParams: ['folder', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Zonefolderoperations$Get extends StandardParameters { + /** + * Folder ID for this request. + */ + folder?: string; + /** + * Name of the Operations resource to return. + */ + operation?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Zonefolderoperations$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Folder ID for this request. + */ + folder?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Name of the zone for request. + */ + zone?: string; + } + export class Resource$Zoneoperations { context: APIRequestContext; constructor(context: APIRequestContext) { @@ -281820,6 +292114,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -282221,49 +292516,605 @@ export namespace compute_preview { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.zoneOperations.wait({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // Name of the zone for this request. + * const res = await compute.zoneOperations.wait({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + wait( + params: Params$Resource$Zoneoperations$Wait, + options: StreamMethodOptions + ): Promise>; + wait( + params?: Params$Resource$Zoneoperations$Wait, + options?: MethodOptions + ): Promise>; + wait( + params: Params$Resource$Zoneoperations$Wait, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Zoneoperations$Wait, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + wait( + params: Params$Resource$Zoneoperations$Wait, + callback: BodyResponseCallback + ): void; + wait(callback: BodyResponseCallback): void; + wait( + paramsOrCallback?: + | Params$Resource$Zoneoperations$Wait + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zoneoperations$Wait; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zoneoperations$Wait; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/operations/{operation}/wait' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'operation'], + pathParams: ['operation', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Zoneoperations$Delete extends StandardParameters { + /** + * Name of the Operations resource to delete, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Zoneoperations$Get extends StandardParameters { + /** + * Name of the Operations resource to return, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Zoneoperations$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for request. + */ + zone?: string; + } + export interface Params$Resource$Zoneoperations$Wait extends StandardParameters { + /** + * Name of the Operations resource to return, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Zoneorganizationoperations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the specified Operations resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneOrganizationOperations.get({ + * // Name of the Operations resource to return. Parent is derived from this + * // field. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "details": {}, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getHealthOperationMetadata": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "instancesTroubleshootOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Zoneorganizationoperations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Zoneorganizationoperations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Zoneorganizationoperations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Zoneorganizationoperations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Zoneorganizationoperations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Zoneorganizationoperations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zoneorganizationoperations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zoneorganizationoperations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/{+organization}/zones/{zone}/operations/{operation}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['organization', 'zone', 'operation'], + pathParams: ['operation', 'organization', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves a list of Operation resources contained within the specified + * organization. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneOrganizationOperations.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Organization ID for this request. + * organization: 'organizations/my-organization', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Name of the zone for request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getHealthOperationMetadata": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "instancesTroubleshootOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -282279,52 +293130,53 @@ export namespace compute_preview { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - wait( - params: Params$Resource$Zoneoperations$Wait, + list( + params: Params$Resource$Zoneorganizationoperations$List, options: StreamMethodOptions ): Promise>; - wait( - params?: Params$Resource$Zoneoperations$Wait, + list( + params?: Params$Resource$Zoneorganizationoperations$List, options?: MethodOptions - ): Promise>; - wait( - params: Params$Resource$Zoneoperations$Wait, + ): Promise>; + list( + params: Params$Resource$Zoneorganizationoperations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Zoneoperations$Wait, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Zoneorganizationoperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - wait( - params: Params$Resource$Zoneoperations$Wait, - callback: BodyResponseCallback + list( + params: Params$Resource$Zoneorganizationoperations$List, + callback: BodyResponseCallback ): void; - wait(callback: BodyResponseCallback): void; - wait( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Zoneoperations$Wait - | BodyResponseCallback + | Params$Resource$Zoneorganizationoperations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Zoneoperations$Wait; + {}) as Params$Resource$Zoneorganizationoperations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Zoneoperations$Wait; + params = {} as Params$Resource$Zoneorganizationoperations$List; options = {}; } @@ -282338,61 +293190,45 @@ export namespace compute_preview { options: Object.assign( { url: ( - rootUrl + - '/compute/v1/projects/{project}/zones/{zone}/operations/{operation}/wait' + rootUrl + '/compute/v1/{+organization}/zones/{zone}/operations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '2026-10-01-preview', }, options ), params, - requiredParams: ['project', 'zone', 'operation'], - pathParams: ['operation', 'project', 'zone'], + requiredParams: ['organization', 'zone'], + pathParams: ['organization', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Zoneoperations$Delete extends StandardParameters { + export interface Params$Resource$Zoneorganizationoperations$Get extends StandardParameters { /** - * Name of the Operations resource to delete, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Zoneoperations$Get extends StandardParameters { - /** - * Name of the Operations resource to return, or its unique numeric - * identifier. + * Name of the Operations resource to return. Parent is derived from this + * field. */ operation?: string; /** - * Project ID for this request. + * Organization ID for this request. */ - project?: string; + organization?: string; /** * Name of the zone for this request. */ zone?: string; } - export interface Params$Resource$Zoneoperations$List extends StandardParameters { + export interface Params$Resource$Zoneorganizationoperations$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -282476,36 +293312,21 @@ export namespace compute_preview { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Organization ID for this request. + */ + organization?: string; /** * Specifies a page token to use. Set `pageToken` to the * `nextPageToken` returned by a previous list request to get * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; /** * Name of the zone for request. */ zone?: string; } - export interface Params$Resource$Zoneoperations$Wait extends StandardParameters { - /** - * Name of the Operations resource to return, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. - */ - zone?: string; - } export class Resource$Zones { context: APIRequestContext; @@ -283067,6 +293888,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -283349,6 +294171,153 @@ export namespace compute_preview { } } + /** + * Retrieves details of a specific VM extension within a project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneVmExtensionPolicies.getVmExtension({ + * // Required. Name of the VM extension for this request. + * extensionName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "name": "my_name", + * // "versions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getVmExtension( + params: Params$Resource$Zonevmextensionpolicies$Getvmextension, + options: StreamMethodOptions + ): Promise>; + getVmExtension( + params?: Params$Resource$Zonevmextensionpolicies$Getvmextension, + options?: MethodOptions + ): Promise>; + getVmExtension( + params: Params$Resource$Zonevmextensionpolicies$Getvmextension, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVmExtension( + params: Params$Resource$Zonevmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVmExtension( + params: Params$Resource$Zonevmextensionpolicies$Getvmextension, + callback: BodyResponseCallback + ): void; + getVmExtension(callback: BodyResponseCallback): void; + getVmExtension( + paramsOrCallback?: + | Params$Resource$Zonevmextensionpolicies$Getvmextension + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zonevmextensionpolicies$Getvmextension; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zonevmextensionpolicies$Getvmextension; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/vmExtensions/{extensionName}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'extensionName'], + pathParams: ['extensionName', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Creates a new zone-level VM extension policy within a project. * @example @@ -283431,6 +294400,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -283787,6 +294757,242 @@ export namespace compute_preview { } } + /** + * Lists all VM extensions within a specific zone for a project. + * This is a read-only API. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('preview'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.zoneVmExtensionPolicies.listVmExtensions({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // You can also filter nested fields. For example, you could specify + * // `scheduling.automaticRestart = false` to include instances only + * // if they are not scheduled for automatic restarts. You can use filtering + * // on nested fields to filter based onresource labels. + * // + * // To filter on multiple expressions, provide each separate expression within + * // parentheses. For example: + * // ``` + * // (scheduling.automaticRestart = true) + * // (cpuPlatform = "Intel Skylake") + * // ``` + * // By default, each expression is an `AND` expression. However, you + * // can include `AND` and `OR` expressions explicitly. + * // For example: + * // ``` + * // (cpuPlatform = "Intel Skylake") OR + * // (cpuPlatform = "Intel Broadwell") AND + * // (scheduling.automaticRestart = true) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. + * // If the number of available results is larger than `maxResults`, + * // Compute Engine returns a `nextPageToken` that can be used to get + * // the next page of results in subsequent list requests. Acceptable values are + * // `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results + * // are returned in alphanumerical order based on the resource name. + * // + * // You can also sort results in descending order based on the creation + * // timestamp using `orderBy="creationTimestamp desc"`. This sorts + * // results based on the `creationTimestamp` field in + * // reverse chronological order (newest result first). Use this to sort + * // resources like operations so that the newest operation is returned first. + * // + * // Currently, only sorting by `name` or + * // `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the + * // `nextPageToken` returned by a previous list request to get + * // the next page of results. + * pageToken: 'placeholder-value', + * // Required. Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + listVmExtensions( + params: Params$Resource$Zonevmextensionpolicies$Listvmextensions, + options: StreamMethodOptions + ): Promise>; + listVmExtensions( + params?: Params$Resource$Zonevmextensionpolicies$Listvmextensions, + options?: MethodOptions + ): Promise>; + listVmExtensions( + params: Params$Resource$Zonevmextensionpolicies$Listvmextensions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listVmExtensions( + params: Params$Resource$Zonevmextensionpolicies$Listvmextensions, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listVmExtensions( + params: Params$Resource$Zonevmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback + ): void; + listVmExtensions( + callback: BodyResponseCallback + ): void; + listVmExtensions( + paramsOrCallback?: + | Params$Resource$Zonevmextensionpolicies$Listvmextensions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Zonevmextensionpolicies$Listvmextensions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Zonevmextensionpolicies$Listvmextensions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/zones/{zone}/vmExtensions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '2026-10-01-preview', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Modifies an existing zone VM extension policy within a project. * @example @@ -283871,6 +295077,7 @@ export namespace compute_preview { * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "details": {}, * // "endTime": "my_endTime", * // "error": {}, * // "getHealthOperationMetadata": {}, @@ -284039,6 +295246,20 @@ export namespace compute_preview { */ zone?: string; } + export interface Params$Resource$Zonevmextensionpolicies$Getvmextension extends StandardParameters { + /** + * Required. Name of the VM extension for this request. + */ + extensionName?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } export interface Params$Resource$Zonevmextensionpolicies$Insert extends StandardParameters { /** * Project ID for this request. @@ -284169,6 +295390,105 @@ export namespace compute_preview { */ zone?: string; } + export interface Params$Resource$Zonevmextensionpolicies$Listvmextensions extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * You can also filter nested fields. For example, you could specify + * `scheduling.automaticRestart = false` to include instances only + * if they are not scheduled for automatic restarts. You can use filtering + * on nested fields to filter based onresource labels. + * + * To filter on multiple expressions, provide each separate expression within + * parentheses. For example: + * ``` + * (scheduling.automaticRestart = true) + * (cpuPlatform = "Intel Skylake") + * ``` + * By default, each expression is an `AND` expression. However, you + * can include `AND` and `OR` expressions explicitly. + * For example: + * ``` + * (cpuPlatform = "Intel Skylake") OR + * (cpuPlatform = "Intel Broadwell") AND + * (scheduling.automaticRestart = true) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. + * If the number of available results is larger than `maxResults`, + * Compute Engine returns a `nextPageToken` that can be used to get + * the next page of results in subsequent list requests. Acceptable values are + * `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. + * + * You can also sort results in descending order based on the creation + * timestamp using `orderBy="creationTimestamp desc"`. This sorts + * results based on the `creationTimestamp` field in + * reverse chronological order (newest result first). Use this to sort + * resources like operations so that the newest operation is returned first. + * + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. + */ + pageToken?: string; + /** + * Required. Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } export interface Params$Resource$Zonevmextensionpolicies$Update extends StandardParameters { /** * Project ID for this request. diff --git a/src/apis/curationpartners/v1.ts b/src/apis/curationpartners/v1.ts index 971c346fcf..f8e0b1404f 100644 --- a/src/apis/curationpartners/v1.ts +++ b/src/apis/curationpartners/v1.ts @@ -847,6 +847,19 @@ export namespace curationpartners_v1 { */ reportResult?: string | null; } + /** + * A response containing media planner account information from a search. + */ + export interface Schema$SearchMediaPlannersResponse { + /** + * List of media planners matching the search criteria. + */ + mediaPlanners?: Schema$MediaPlanner[]; + /** + * A token which can be passed to a subsequent call to the SearchMediaPlanners method to retrieve the next page of results in SearchMediaPlannersRequest.page_token. + */ + nextPageToken?: string | null; + } /** * Represents a sorting in a report. */ @@ -4390,6 +4403,153 @@ export namespace curationpartners_v1 { return createAPIRequest(parameters); } } + + /** + * Searches for media planner accounts matching the given DSP seat ID. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/curationpartners.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const curationpartners = google.curationpartners('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/curation-partners'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await curationpartners.mediaPlanners.search({ + * // Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner. + * dspSeatId: 'placeholder-value', + * // Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in SearchMediaPlannersResponse.nextPageToken. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "mediaPlanners": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + search( + params: Params$Resource$Mediaplanners$Search, + options: StreamMethodOptions + ): Promise>; + search( + params?: Params$Resource$Mediaplanners$Search, + options?: MethodOptions + ): Promise>; + search( + params: Params$Resource$Mediaplanners$Search, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Mediaplanners$Search, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + search( + params: Params$Resource$Mediaplanners$Search, + callback: BodyResponseCallback + ): void; + search( + callback: BodyResponseCallback + ): void; + search( + paramsOrCallback?: + | Params$Resource$Mediaplanners$Search + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Mediaplanners$Search; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Mediaplanners$Search; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://curationpartners.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/mediaPlanners:search').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } export interface Params$Resource$Mediaplanners$List extends StandardParameters { @@ -4406,4 +4566,18 @@ export namespace curationpartners_v1 { */ pageToken?: string; } + export interface Params$Resource$Mediaplanners$Search extends StandardParameters { + /** + * Required. The DSP seat ID to search for. The DSP seat ID is provided by the media planner. + */ + dspSeatId?: string; + /** + * Optional. The maximum number of media planners to return. If unspecified, at most 100 media planners will be returned. The maximum value is 500; values above 500 will be coerced to 500. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. This value is received from a previous `SearchMediaPlanners` call in SearchMediaPlannersResponse.nextPageToken. + */ + pageToken?: string; + } } diff --git a/src/apis/deepreview/README.md b/src/apis/deepreview/README.md index 81b9d8d2bf..64ddccd0f4 100644 --- a/src/apis/deepreview/README.md +++ b/src/apis/deepreview/README.md @@ -2,7 +2,7 @@ # deepreview -> Deep Review API for automated conference-quality scientific paper reviews. +> Deep Review API for automated, in-depth document reviews. ## Installation diff --git a/src/apis/deepreview/v1.ts b/src/apis/deepreview/v1.ts index 576dee0ef8..c1734b018d 100644 --- a/src/apis/deepreview/v1.ts +++ b/src/apis/deepreview/v1.ts @@ -102,7 +102,7 @@ export namespace deepreview_v1 { /** * Deep Review API * - * Deep Review API for automated conference-quality scientific paper reviews. + * Deep Review API for automated, in-depth document reviews. * * @example * ```js @@ -115,6 +115,7 @@ export namespace deepreview_v1 { documents: Resource$Documents; media: Resource$Media; operations: Resource$Operations; + v1: Resource$V1; constructor(options: GlobalOptions, google?: GoogleConfigurable) { this.context = { @@ -125,6 +126,7 @@ export namespace deepreview_v1 { this.documents = new Resource$Documents(this.context); this.media = new Resource$Media(this.context); this.operations = new Resource$Operations(this.context); + this.v1 = new Resource$V1(this.context); } } @@ -659,6 +661,35 @@ export namespace deepreview_v1 { */ suffix?: string | null; } + /** + * Singleton resource representing the authenticated caller's review quota limits and sliding-window usage. + */ + export interface Schema$UserQuota { + /** + * Output only. Whether a custom per-user quota override is active for this user. + */ + customLimitEnabled?: boolean | null; + /** + * Output only. Maximum free-tier reviews allowed per rolling 7-day window. + */ + maxReviewCountPerWeek?: number | null; + /** + * Identifier. Resource name of the singleton user quota (`userQuota`). + */ + name?: string | null; + /** + * Output only. Timestamp when the next review quota slot becomes available if `remaining_review_count` is 0; unset when quota is currently available. + */ + nextAvailableTime?: string | null; + /** + * Output only. Remaining free-tier reviews available in the current rolling 7-day window (`max(0, max_review_count_per_week - used_review_count)`). + */ + remainingReviewCount?: number | null; + /** + * Output only. Number of free-tier reviews used in the past 7 days. + */ + usedReviewCount?: number | null; + } export class Resource$Documents { context: APIRequestContext; @@ -2578,4 +2609,155 @@ export namespace deepreview_v1 { */ name?: string; } + + export class Resource$V1 { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the review quota limits and sliding-window usage for the authenticated caller. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/deepreview.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const deepreview = google.deepreview('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/drive.file'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await deepreview.getUserQuota({ + * // Required. The resource name of the singleton user quota to retrieve. Format: `userQuota` + * name: 'userQuota', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "customLimitEnabled": false, + * // "maxReviewCountPerWeek": 0, + * // "name": "my_name", + * // "nextAvailableTime": "my_nextAvailableTime", + * // "remainingReviewCount": 0, + * // "usedReviewCount": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getUserQuota( + params: Params$Resource$V1$Getuserquota, + options: StreamMethodOptions + ): Promise>; + getUserQuota( + params?: Params$Resource$V1$Getuserquota, + options?: MethodOptions + ): Promise>; + getUserQuota( + params: Params$Resource$V1$Getuserquota, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getUserQuota( + params: Params$Resource$V1$Getuserquota, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getUserQuota( + params: Params$Resource$V1$Getuserquota, + callback: BodyResponseCallback + ): void; + getUserQuota(callback: BodyResponseCallback): void; + getUserQuota( + paramsOrCallback?: + | Params$Resource$V1$Getuserquota + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$V1$Getuserquota; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$V1$Getuserquota; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://deepreview.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$V1$Getuserquota extends StandardParameters { + /** + * Required. The resource name of the singleton user quota to retrieve. Format: `userQuota` + */ + name?: string; + } } diff --git a/src/apis/dialogflow/v2.ts b/src/apis/dialogflow/v2.ts index 60e4b3e65a..6aa87def7b 100644 --- a/src/apis/dialogflow/v2.ts +++ b/src/apis/dialogflow/v2.ts @@ -1360,8 +1360,14 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowV2AutomatedAgentReply { allowCancellation?: boolean | null; automatedAgentReplyType?: string | null; + callCompanionAuthCode?: string | null; cxCurrentPage?: string | null; detectIntentResponse?: Schema$GoogleCloudDialogflowV2DetectIntentResponse; + event?: string | null; + intent?: string | null; + matchConfidence?: number | null; + parameters?: {[key: string]: any} | null; + responseMessages?: Schema$GoogleCloudDialogflowV2ResponseMessage[]; } export interface Schema$GoogleCloudDialogflowV2BatchCreateEntitiesRequest { entities?: Schema$GoogleCloudDialogflowV2EntityTypeEntity[]; @@ -2060,6 +2066,7 @@ export namespace dialogflow_v2 { } export interface Schema$GoogleCloudDialogflowV2beta1SentimentAnalysisResult { queryTextSentiment?: Schema$GoogleCloudDialogflowV2beta1Sentiment; + status?: Schema$GoogleRpcStatus; } export interface Schema$GoogleCloudDialogflowV2beta1ServiceLatency { internalServiceLatencies?: Schema$GoogleCloudDialogflowV2beta1ServiceLatencyInternalServiceLatency[]; @@ -2210,6 +2217,9 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowV2CesToolSpec { cesTool?: string | null; confirmationRequirement?: string | null; + parameterOverrides?: Schema$GoogleCloudDialogflowV2ParameterOverride[]; + proactiveEnabled?: boolean | null; + reactiveEnabled?: boolean | null; } export interface Schema$GoogleCloudDialogflowV2ClearSuggestionFeatureConfigOperationMetadata { conversationProfile?: string | null; @@ -3300,6 +3310,7 @@ export namespace dialogflow_v2 { name?: string | null; participant?: string | null; participantRole?: string | null; + responseMessages?: Schema$GoogleCloudDialogflowV2ResponseMessage[]; sendTime?: string | null; sentimentAnalysis?: Schema$GoogleCloudDialogflowV2SentimentAnalysisResult; } @@ -3331,6 +3342,11 @@ export namespace dialogflow_v2 { sampleRateHertz?: number | null; synthesizeSpeechConfig?: Schema$GoogleCloudDialogflowV2SynthesizeSpeechConfig; } + export interface Schema$GoogleCloudDialogflowV2ParameterOverride { + contextReferenceKey?: string | null; + fieldPath?: string | null; + parameterName?: string | null; + } export interface Schema$GoogleCloudDialogflowV2Participant { agentDesktopSource?: string | null; documentsMetadataFilters?: {[key: string]: string} | null; @@ -3390,6 +3406,33 @@ export namespace dialogflow_v2 { importGcsCustomMetadata?: boolean | null; smartMessagingPartialUpdate?: boolean | null; } + export interface Schema$GoogleCloudDialogflowV2ResponseMessage { + endInteraction?: Schema$GoogleCloudDialogflowV2ResponseMessageEndInteraction; + liveAgentHandoff?: Schema$GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff; + mixedAudio?: Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudio; + payload?: {[key: string]: any} | null; + telephonyTransferCall?: Schema$GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall; + text?: Schema$GoogleCloudDialogflowV2ResponseMessageText; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageEndInteraction {} + export interface Schema$GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff { + metadata?: {[key: string]: any} | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudio { + segments?: Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment[]; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment { + allowPlaybackInterruption?: boolean | null; + audio?: string | null; + uri?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall { + phoneNumber?: string | null; + sipUri?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageText { + text?: string[] | null; + } export interface Schema$GoogleCloudDialogflowV2RestoreAgentRequest { agentContent?: string | null; agentUri?: string | null; @@ -3486,6 +3529,7 @@ export namespace dialogflow_v2 { } export interface Schema$GoogleCloudDialogflowV2SentimentAnalysisResult { queryTextSentiment?: Schema$GoogleCloudDialogflowV2Sentiment; + status?: Schema$GoogleRpcStatus; } export interface Schema$GoogleCloudDialogflowV2ServiceLatency { internalServiceLatencies?: Schema$GoogleCloudDialogflowV2ServiceLatencyInternalServiceLatency[]; @@ -3903,6 +3947,9 @@ export namespace dialogflow_v2 { export interface Schema$GoogleCloudDialogflowV2ToolsetTool { confirmationRequirement?: string | null; operationId?: string | null; + parameterOverrides?: Schema$GoogleCloudDialogflowV2ParameterOverride[]; + proactiveEnabled?: boolean | null; + reactiveEnabled?: boolean | null; toolset?: string | null; } export interface Schema$GoogleCloudDialogflowV2ToolTLSConfig { diff --git a/src/apis/dialogflow/v2beta1.ts b/src/apis/dialogflow/v2beta1.ts index 3bdc788947..6b434a6645 100644 --- a/src/apis/dialogflow/v2beta1.ts +++ b/src/apis/dialogflow/v2beta1.ts @@ -1492,6 +1492,9 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowV2beta1CesToolSpec { cesTool?: string | null; confirmationRequirement?: string | null; + parameterOverrides?: Schema$GoogleCloudDialogflowV2beta1ParameterOverride[]; + proactiveEnabled?: boolean | null; + reactiveEnabled?: boolean | null; } export interface Schema$GoogleCloudDialogflowV2beta1ClearSuggestionFeatureConfigOperationMetadata { conversationProfile?: string | null; @@ -2608,6 +2611,11 @@ export namespace dialogflow_v2beta1 { sampleRateHertz?: number | null; synthesizeSpeechConfig?: Schema$GoogleCloudDialogflowV2beta1SynthesizeSpeechConfig; } + export interface Schema$GoogleCloudDialogflowV2beta1ParameterOverride { + contextReferenceKey?: string | null; + fieldPath?: string | null; + parameterName?: string | null; + } export interface Schema$GoogleCloudDialogflowV2beta1Participant { agentDesktopSource?: string | null; documentsMetadataFilters?: {[key: string]: string} | null; @@ -2804,6 +2812,7 @@ export namespace dialogflow_v2beta1 { } export interface Schema$GoogleCloudDialogflowV2beta1SentimentAnalysisResult { queryTextSentiment?: Schema$GoogleCloudDialogflowV2beta1Sentiment; + status?: Schema$GoogleRpcStatus; } export interface Schema$GoogleCloudDialogflowV2beta1ServiceLatency { internalServiceLatencies?: Schema$GoogleCloudDialogflowV2beta1ServiceLatencyInternalServiceLatency[]; @@ -3249,6 +3258,9 @@ export namespace dialogflow_v2beta1 { export interface Schema$GoogleCloudDialogflowV2beta1ToolsetTool { confirmationRequirement?: string | null; operationId?: string | null; + parameterOverrides?: Schema$GoogleCloudDialogflowV2beta1ParameterOverride[]; + proactiveEnabled?: boolean | null; + reactiveEnabled?: boolean | null; toolset?: string | null; } export interface Schema$GoogleCloudDialogflowV2beta1ToolTLSConfig { @@ -3788,6 +3800,7 @@ export namespace dialogflow_v2beta1 { name?: string | null; participant?: string | null; participantRole?: string | null; + responseMessages?: Schema$GoogleCloudDialogflowV2ResponseMessage[]; sendTime?: string | null; sentimentAnalysis?: Schema$GoogleCloudDialogflowV2SentimentAnalysisResult; } @@ -3818,6 +3831,33 @@ export namespace dialogflow_v2beta1 { webhookPayload?: {[key: string]: any} | null; webhookSource?: string | null; } + export interface Schema$GoogleCloudDialogflowV2ResponseMessage { + endInteraction?: Schema$GoogleCloudDialogflowV2ResponseMessageEndInteraction; + liveAgentHandoff?: Schema$GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff; + mixedAudio?: Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudio; + payload?: {[key: string]: any} | null; + telephonyTransferCall?: Schema$GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall; + text?: Schema$GoogleCloudDialogflowV2ResponseMessageText; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageEndInteraction {} + export interface Schema$GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff { + metadata?: {[key: string]: any} | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudio { + segments?: Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment[]; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment { + allowPlaybackInterruption?: boolean | null; + audio?: string | null; + uri?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall { + phoneNumber?: string | null; + sipUri?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageText { + text?: string[] | null; + } export interface Schema$GoogleCloudDialogflowV2SearchEntryPoint { renderedContent?: string | null; } @@ -3832,6 +3872,7 @@ export namespace dialogflow_v2beta1 { } export interface Schema$GoogleCloudDialogflowV2SentimentAnalysisResult { queryTextSentiment?: Schema$GoogleCloudDialogflowV2Sentiment; + status?: Schema$GoogleRpcStatus; } export interface Schema$GoogleCloudDialogflowV2ServiceLatency { internalServiceLatencies?: Schema$GoogleCloudDialogflowV2ServiceLatencyInternalServiceLatency[]; diff --git a/src/apis/dialogflow/v3.ts b/src/apis/dialogflow/v3.ts index baaa6038eb..76310286a3 100644 --- a/src/apis/dialogflow/v3.ts +++ b/src/apis/dialogflow/v3.ts @@ -2935,6 +2935,7 @@ export namespace dialogflow_v3 { } export interface Schema$GoogleCloudDialogflowV2beta1SentimentAnalysisResult { queryTextSentiment?: Schema$GoogleCloudDialogflowV2beta1Sentiment; + status?: Schema$GoogleRpcStatus; } export interface Schema$GoogleCloudDialogflowV2beta1ServiceLatency { internalServiceLatencies?: Schema$GoogleCloudDialogflowV2beta1ServiceLatencyInternalServiceLatency[]; @@ -3567,6 +3568,7 @@ export namespace dialogflow_v3 { name?: string | null; participant?: string | null; participantRole?: string | null; + responseMessages?: Schema$GoogleCloudDialogflowV2ResponseMessage[]; sendTime?: string | null; sentimentAnalysis?: Schema$GoogleCloudDialogflowV2SentimentAnalysisResult; } @@ -3597,6 +3599,33 @@ export namespace dialogflow_v3 { webhookPayload?: {[key: string]: any} | null; webhookSource?: string | null; } + export interface Schema$GoogleCloudDialogflowV2ResponseMessage { + endInteraction?: Schema$GoogleCloudDialogflowV2ResponseMessageEndInteraction; + liveAgentHandoff?: Schema$GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff; + mixedAudio?: Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudio; + payload?: {[key: string]: any} | null; + telephonyTransferCall?: Schema$GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall; + text?: Schema$GoogleCloudDialogflowV2ResponseMessageText; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageEndInteraction {} + export interface Schema$GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff { + metadata?: {[key: string]: any} | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudio { + segments?: Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment[]; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment { + allowPlaybackInterruption?: boolean | null; + audio?: string | null; + uri?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall { + phoneNumber?: string | null; + sipUri?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageText { + text?: string[] | null; + } export interface Schema$GoogleCloudDialogflowV2SearchEntryPoint { renderedContent?: string | null; } @@ -3611,6 +3640,7 @@ export namespace dialogflow_v3 { } export interface Schema$GoogleCloudDialogflowV2SentimentAnalysisResult { queryTextSentiment?: Schema$GoogleCloudDialogflowV2Sentiment; + status?: Schema$GoogleRpcStatus; } export interface Schema$GoogleCloudDialogflowV2ServiceLatency { internalServiceLatencies?: Schema$GoogleCloudDialogflowV2ServiceLatencyInternalServiceLatency[]; diff --git a/src/apis/dialogflow/v3beta1.ts b/src/apis/dialogflow/v3beta1.ts index 83119d475f..6ea2e51688 100644 --- a/src/apis/dialogflow/v3beta1.ts +++ b/src/apis/dialogflow/v3beta1.ts @@ -3165,6 +3165,7 @@ export namespace dialogflow_v3beta1 { } export interface Schema$GoogleCloudDialogflowV2beta1SentimentAnalysisResult { queryTextSentiment?: Schema$GoogleCloudDialogflowV2beta1Sentiment; + status?: Schema$GoogleRpcStatus; } export interface Schema$GoogleCloudDialogflowV2beta1ServiceLatency { internalServiceLatencies?: Schema$GoogleCloudDialogflowV2beta1ServiceLatencyInternalServiceLatency[]; @@ -3797,6 +3798,7 @@ export namespace dialogflow_v3beta1 { name?: string | null; participant?: string | null; participantRole?: string | null; + responseMessages?: Schema$GoogleCloudDialogflowV2ResponseMessage[]; sendTime?: string | null; sentimentAnalysis?: Schema$GoogleCloudDialogflowV2SentimentAnalysisResult; } @@ -3827,6 +3829,33 @@ export namespace dialogflow_v3beta1 { webhookPayload?: {[key: string]: any} | null; webhookSource?: string | null; } + export interface Schema$GoogleCloudDialogflowV2ResponseMessage { + endInteraction?: Schema$GoogleCloudDialogflowV2ResponseMessageEndInteraction; + liveAgentHandoff?: Schema$GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff; + mixedAudio?: Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudio; + payload?: {[key: string]: any} | null; + telephonyTransferCall?: Schema$GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall; + text?: Schema$GoogleCloudDialogflowV2ResponseMessageText; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageEndInteraction {} + export interface Schema$GoogleCloudDialogflowV2ResponseMessageLiveAgentHandoff { + metadata?: {[key: string]: any} | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudio { + segments?: Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment[]; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageMixedAudioSegment { + allowPlaybackInterruption?: boolean | null; + audio?: string | null; + uri?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageTelephonyTransferCall { + phoneNumber?: string | null; + sipUri?: string | null; + } + export interface Schema$GoogleCloudDialogflowV2ResponseMessageText { + text?: string[] | null; + } export interface Schema$GoogleCloudDialogflowV2SearchEntryPoint { renderedContent?: string | null; } @@ -3841,6 +3870,7 @@ export namespace dialogflow_v3beta1 { } export interface Schema$GoogleCloudDialogflowV2SentimentAnalysisResult { queryTextSentiment?: Schema$GoogleCloudDialogflowV2Sentiment; + status?: Schema$GoogleRpcStatus; } export interface Schema$GoogleCloudDialogflowV2ServiceLatency { internalServiceLatencies?: Schema$GoogleCloudDialogflowV2ServiceLatencyInternalServiceLatency[]; diff --git a/src/apis/displayvideo/index.ts b/src/apis/displayvideo/index.ts index d96542f7b5..fcc31f697a 100644 --- a/src/apis/displayvideo/index.ts +++ b/src/apis/displayvideo/index.ts @@ -21,6 +21,7 @@ import {displayvideo_v1dev} from './v1dev'; import {displayvideo_v2} from './v2'; import {displayvideo_v3} from './v3'; import {displayvideo_v4} from './v4'; +import {displayvideo_v5} from './v5'; export const VERSIONS = { v1: displayvideo_v1.Displayvideo, @@ -30,6 +31,7 @@ export const VERSIONS = { v2: displayvideo_v2.Displayvideo, v3: displayvideo_v3.Displayvideo, v4: displayvideo_v4.Displayvideo, + v5: displayvideo_v5.Displayvideo, }; export function displayvideo(version: 'v1'): displayvideo_v1.Displayvideo; @@ -64,6 +66,10 @@ export function displayvideo(version: 'v4'): displayvideo_v4.Displayvideo; export function displayvideo( options: displayvideo_v4.Options ): displayvideo_v4.Displayvideo; +export function displayvideo(version: 'v5'): displayvideo_v5.Displayvideo; +export function displayvideo( + options: displayvideo_v5.Options +): displayvideo_v5.Displayvideo; export function displayvideo< T = | displayvideo_v1.Displayvideo @@ -72,7 +78,8 @@ export function displayvideo< | displayvideo_v1dev.Displayvideo | displayvideo_v2.Displayvideo | displayvideo_v3.Displayvideo - | displayvideo_v4.Displayvideo, + | displayvideo_v4.Displayvideo + | displayvideo_v5.Displayvideo, >( this: GoogleConfigurable, versionOrOptions: @@ -90,6 +97,8 @@ export function displayvideo< | displayvideo_v3.Options | 'v4' | displayvideo_v4.Options + | 'v5' + | displayvideo_v5.Options ) { return getAPI('displayvideo', versionOrOptions, VERSIONS, this); } @@ -103,6 +112,7 @@ export {displayvideo_v1dev}; export {displayvideo_v2}; export {displayvideo_v3}; export {displayvideo_v4}; +export {displayvideo_v5}; export { AuthPlus, GlobalOptions, diff --git a/src/apis/displayvideo/v2.ts b/src/apis/displayvideo/v2.ts index e07c7ec844..00a569b4d9 100644 --- a/src/apis/displayvideo/v2.ts +++ b/src/apis/displayvideo/v2.ts @@ -596,7 +596,7 @@ export namespace displayvideo_v2 { */ inheritance?: string | null; /** - * Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. + * Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. */ inventorySourceDetails?: Schema$InventorySourceAssignedTargetingOptionDetails; /** @@ -934,11 +934,11 @@ export namespace displayvideo_v2 { */ export interface Schema$BulkEditAdvertiserAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; } @@ -1002,11 +1002,11 @@ export namespace displayvideo_v2 { */ export interface Schema$BulkEditAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; /** @@ -2272,7 +2272,7 @@ export namespace displayvideo_v2 { */ deviceType?: string | null; /** - * Optional. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items. + * Output only. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items. */ youtubeAndPartnersBidMultiplier?: number | null; } @@ -3143,7 +3143,7 @@ export namespace displayvideo_v2 { integrationCode?: string | null; } /** - * Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is one of `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. + * Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. */ export interface Schema$InventorySourceAssignedTargetingOptionDetails { /** @@ -4332,7 +4332,7 @@ export namespace displayvideo_v2 { */ feeType?: string | null; /** - * The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_ADLOOX` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types. + * The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_PEER39` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types. */ invoiceType?: string | null; } @@ -5326,6 +5326,10 @@ export namespace displayvideo_v2 { * Optional. The list of text assets shown on the call-to-action button. Must be set if headlines is set. */ actionButtonLabels?: string[] | null; + /** + * Optional. The business name shown on the ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied. + */ + businessName?: string | null; /** * Optional. The list of companion banners used by this ad. */ @@ -5358,6 +5362,10 @@ export namespace displayvideo_v2 { * Optional. The list of headlines shown on the call-to-action banner. */ headlines?: string[] | null; + /** + * Optional. The logo image used by this ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied. + */ + logo?: Schema$ImageAsset; /** * Optional. The list of long headlines shown on the call-to-action banner. Must be set unless the parent line item's lineItemType is `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE`, in which case this field cannot be set. */ @@ -13582,7 +13590,7 @@ export namespace displayvideo_v2 { * advertiserId: '[^/]+', * // Required. The ID of the line item the assigned targeting option will belong to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * targetingType: '[^/]+', * * // Request body metadata @@ -13846,7 +13854,7 @@ export namespace displayvideo_v2 { * assignedTargetingOptionId: '[^/]+', * // Required. The ID of the line item the assigned targeting option belongs to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * targetingType: '[^/]+', * }, * ); @@ -14000,7 +14008,7 @@ export namespace displayvideo_v2 { * assignedTargetingOptionId: '[^/]+', * // Required. The ID of the line item the assigned targeting option belongs to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -14217,7 +14225,7 @@ export namespace displayvideo_v2 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -14347,7 +14355,7 @@ export namespace displayvideo_v2 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ targetingType?: string; @@ -14370,7 +14378,7 @@ export namespace displayvideo_v2 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ targetingType?: string; } @@ -14388,7 +14396,7 @@ export namespace displayvideo_v2 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -14418,7 +14426,7 @@ export namespace displayvideo_v2 { */ pageToken?: string; /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -18535,7 +18543,7 @@ export namespace displayvideo_v2 { * { * // Required. The ID of the advertiser. * advertiserId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * targetingType: '[^/]+', * * // Request body metadata @@ -18797,7 +18805,7 @@ export namespace displayvideo_v2 { * advertiserId: '[^/]+', * // Required. The ID of the assigned targeting option to delete. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * targetingType: '[^/]+', * }, * ); @@ -19284,7 +19292,7 @@ export namespace displayvideo_v2 { */ advertiserId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ targetingType?: string; @@ -19303,7 +19311,7 @@ export namespace displayvideo_v2 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ targetingType?: string; } @@ -29838,7 +29846,7 @@ export namespace displayvideo_v2 { * advertiserId: 'placeholder-value', * // Required. The ID of the of targeting option to retrieve. * targetingOptionId: '[^/]+', - * // Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * // Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` * targetingType: '[^/]+', * }); * console.log(res.data); @@ -30020,7 +30028,7 @@ export namespace displayvideo_v2 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * // Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` * targetingType: '[^/]+', * }); * console.log(res.data); @@ -30300,7 +30308,7 @@ export namespace displayvideo_v2 { */ targetingOptionId?: string; /** - * Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` */ targetingType?: string; } @@ -30326,7 +30334,7 @@ export namespace displayvideo_v2 { */ pageToken?: string; /** - * Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` */ targetingType?: string; } diff --git a/src/apis/displayvideo/v3.ts b/src/apis/displayvideo/v3.ts index ddf6cb8986..516f99a88f 100644 --- a/src/apis/displayvideo/v3.ts +++ b/src/apis/displayvideo/v3.ts @@ -1366,7 +1366,7 @@ export namespace displayvideo_v3 { */ inheritance?: string | null; /** - * Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. + * Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. */ inventorySourceDetails?: Schema$InventorySourceAssignedTargetingOptionDetails; /** @@ -1716,11 +1716,11 @@ export namespace displayvideo_v3 { */ adGroupIds?: string[] | null; /** - * Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; } @@ -1746,11 +1746,11 @@ export namespace displayvideo_v3 { */ export interface Schema$BulkEditAdvertiserAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; } @@ -1814,11 +1814,11 @@ export namespace displayvideo_v3 { */ export interface Schema$BulkEditAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; /** @@ -3456,7 +3456,7 @@ export namespace displayvideo_v3 { */ deviceType?: string | null; /** - * Optional. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items. + * Output only. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items. */ youtubeAndPartnersBidMultiplier?: number | null; } @@ -4211,7 +4211,7 @@ export namespace displayvideo_v3 { */ name?: string | null; /** - * Optional. Required. The optimization objective of the insertion order. + * Required. The optimization objective of the insertion order. */ optimizationObjective?: string | null; /** @@ -4361,7 +4361,7 @@ export namespace displayvideo_v3 { integrationCode?: string | null; } /** - * Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is one of `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. + * Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. */ export interface Schema$InventorySourceAssignedTargetingOptionDetails { /** @@ -5555,7 +5555,7 @@ export namespace displayvideo_v3 { */ feeType?: string | null; /** - * The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_ADLOOX` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types. + * The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_PEER39` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types. */ invoiceType?: string | null; } @@ -6578,6 +6578,10 @@ export namespace displayvideo_v3 { * Optional. The list of text assets shown on the call-to-action button. Must be set if headlines is set. */ actionButtonLabels?: string[] | null; + /** + * Optional. The business name shown on the ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied. + */ + businessName?: string | null; /** * Optional. The list of companion banners used by this ad. */ @@ -6610,6 +6614,10 @@ export namespace displayvideo_v3 { * Optional. The list of headlines shown on the call-to-action banner. */ headlines?: string[] | null; + /** + * Optional. The logo image used by this ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied. + */ + logo?: Schema$ImageAsset; /** * Optional. The list of long headlines shown on the call-to-action banner. Must be set unless the parent line item's lineItemType is `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE`, in which case this field cannot be set. */ @@ -10324,7 +10332,7 @@ export namespace displayvideo_v3 { * adGroupId: '[^/]+', * // Required. The ID of the advertiser the ad group belongs to. * advertiserId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * * // Request body metadata @@ -10590,7 +10598,7 @@ export namespace displayvideo_v3 { * advertiserId: '[^/]+', * // Required. The ID of the assigned targeting option to delete. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * }, * ); @@ -10744,7 +10752,7 @@ export namespace displayvideo_v3 { * advertiserId: '[^/]+', * // Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * }, * ); @@ -10962,7 +10970,7 @@ export namespace displayvideo_v3 { * pageSize: 'placeholder-value', * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * }, * ); @@ -11092,7 +11100,7 @@ export namespace displayvideo_v3 { */ advertiserId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; @@ -11115,7 +11123,7 @@ export namespace displayvideo_v3 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; } @@ -11133,7 +11141,7 @@ export namespace displayvideo_v3 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; } @@ -11163,7 +11171,7 @@ export namespace displayvideo_v3 { */ pageToken?: string; /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; } @@ -17669,7 +17677,7 @@ export namespace displayvideo_v3 { * advertiserId: '[^/]+', * // Required. The ID of the line item the assigned targeting option will belong to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * targetingType: '[^/]+', * * // Request body metadata @@ -17935,7 +17943,7 @@ export namespace displayvideo_v3 { * assignedTargetingOptionId: '[^/]+', * // Required. The ID of the line item the assigned targeting option belongs to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * targetingType: '[^/]+', * }, * ); @@ -18089,7 +18097,7 @@ export namespace displayvideo_v3 { * assignedTargetingOptionId: '[^/]+', * // Required. The ID of the line item the assigned targeting option belongs to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -18307,7 +18315,7 @@ export namespace displayvideo_v3 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -18437,7 +18445,7 @@ export namespace displayvideo_v3 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ targetingType?: string; @@ -18460,7 +18468,7 @@ export namespace displayvideo_v3 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ targetingType?: string; } @@ -18478,7 +18486,7 @@ export namespace displayvideo_v3 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -18508,7 +18516,7 @@ export namespace displayvideo_v3 { */ pageToken?: string; /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -21613,7 +21621,7 @@ export namespace displayvideo_v3 { * { * // Required. The ID of the advertiser. * advertiserId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * targetingType: '[^/]+', * * // Request body metadata @@ -21877,7 +21885,7 @@ export namespace displayvideo_v3 { * advertiserId: '[^/]+', * // Required. The ID of the assigned targeting option to delete. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * targetingType: '[^/]+', * }, * ); @@ -22365,7 +22373,7 @@ export namespace displayvideo_v3 { */ advertiserId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ targetingType?: string; @@ -22384,7 +22392,7 @@ export namespace displayvideo_v3 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ targetingType?: string; } @@ -32326,7 +32334,7 @@ export namespace displayvideo_v3 { * advertiserId: 'placeholder-value', * // Required. The ID of the of targeting option to retrieve. * targetingOptionId: '[^/]+', - * // Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * // Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` * targetingType: '[^/]+', * }); * console.log(res.data); @@ -32509,7 +32517,7 @@ export namespace displayvideo_v3 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * // Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` * targetingType: '[^/]+', * }); * console.log(res.data); @@ -32789,7 +32797,7 @@ export namespace displayvideo_v3 { */ targetingOptionId?: string; /** - * Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` */ targetingType?: string; } @@ -32815,7 +32823,7 @@ export namespace displayvideo_v3 { */ pageToken?: string; /** - * Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` */ targetingType?: string; } diff --git a/src/apis/displayvideo/v4.ts b/src/apis/displayvideo/v4.ts index 9e06e245a1..dba9423da5 100644 --- a/src/apis/displayvideo/v4.ts +++ b/src/apis/displayvideo/v4.ts @@ -1455,7 +1455,7 @@ export namespace displayvideo_v4 { */ inheritance?: string | null; /** - * Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. + * Inventory source details. This field will be populated when the targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. */ inventorySourceDetails?: Schema$InventorySourceAssignedTargetingOptionDetails; /** @@ -1823,11 +1823,11 @@ export namespace displayvideo_v4 { */ adGroupIds?: string[] | null; /** - * Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Optional. The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Optional. The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; } @@ -1853,11 +1853,11 @@ export namespace displayvideo_v4 { */ export interface Schema$BulkEditAdvertiserAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * The assigned targeting options to create in batch, specified as a list of `CreateAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * The assigned targeting options to delete in batch, specified as a list of `DeleteAssignedTargetingOptionsRequest`. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; } @@ -1921,11 +1921,11 @@ export namespace displayvideo_v4 { */ export interface Schema$BulkEditAssignedTargetingOptionsRequest { /** - * The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * The assigned targeting options to create in batch, specified as a list of CreateAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ createRequests?: Schema$CreateAssignedTargetingOptionsRequest[]; /** - * The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * The assigned targeting options to delete in batch, specified as a list of DeleteAssignedTargetingOptionsRequest. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ deleteRequests?: Schema$DeleteAssignedTargetingOptionsRequest[]; /** @@ -3661,7 +3661,7 @@ export namespace displayvideo_v4 { */ deviceType?: string | null; /** - * Optional. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items. + * Output only. Bid multiplier allows you to show your ads more or less frequently based on the device type. It will apply a multiplier on the original bid price. When this field is 0, it indicates this field is not applicable instead of multiplying 0 on the original bid price. For example, if the bid price without multiplier is $10.0 and the multiplier is 1.5 for Tablet, the resulting bid price for Tablet will be $15.0. Only applicable to YouTube and Partners line items. */ youtubeAndPartnersBidMultiplier?: number | null; } @@ -4595,7 +4595,7 @@ export namespace displayvideo_v4 { */ name?: string | null; /** - * Optional. Required. The optimization objective of the insertion order. + * Required. The optimization objective of the insertion order. */ optimizationObjective?: string | null; /** @@ -4857,7 +4857,7 @@ export namespace displayvideo_v4 { partnerId?: string | null; } /** - * Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is one of `TARGETING_TYPE_INVENTORY_SOURCE` or `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. + * Targeting details for inventory source. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_INVENTORY_SOURCE_DEAL`. */ export interface Schema$InventorySourceAssignedTargetingOptionDetails { /** @@ -6183,7 +6183,7 @@ export namespace displayvideo_v4 { */ feeType?: string | null; /** - * The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_ADLOOX` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types. + * The invoice type for this partner cost. * Required when cost_type is one of: - `PARTNER_COST_TYPE_PEER39` - `PARTNER_COST_TYPE_DOUBLE_VERIFY` - `PARTNER_COST_TYPE_INTEGRAL_AD_SCIENCE`. * Output only for other types. */ invoiceType?: string | null; } @@ -7617,6 +7617,10 @@ export namespace displayvideo_v4 { * Optional. The list of text assets shown on the call-to-action button. Must be set if headlines is set. */ actionButtonLabels?: string[] | null; + /** + * Optional. The business name shown on the ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied. + */ + businessName?: string | null; /** * Optional. The list of companion banners used by this ad. */ @@ -7649,6 +7653,10 @@ export namespace displayvideo_v4 { * Optional. The list of headlines shown on the call-to-action banner. */ headlines?: string[] | null; + /** + * Optional. The logo image used by this ad. This setting is required unless a default value is set at the advertiser level. If left unset, the default value will be applied. + */ + logo?: Schema$ImageAsset; /** * Optional. The list of long headlines shown on the call-to-action banner. Must be set unless the parent line item's lineItemType is `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE`, in which case this field cannot be set. */ @@ -12515,7 +12523,7 @@ export namespace displayvideo_v4 { * adGroupId: '[^/]+', * // Required. The ID of the advertiser the ad group belongs to. * advertiserId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * * // Request body metadata @@ -12781,7 +12789,7 @@ export namespace displayvideo_v4 { * advertiserId: '[^/]+', * // Required. The ID of the assigned targeting option to delete. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * }, * ); @@ -12935,7 +12943,7 @@ export namespace displayvideo_v4 { * advertiserId: '[^/]+', * // Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * }, * ); @@ -13153,7 +13161,7 @@ export namespace displayvideo_v4 { * pageSize: 'placeholder-value', * // Optional. A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` * targetingType: '[^/]+', * }, * ); @@ -13283,7 +13291,7 @@ export namespace displayvideo_v4 { */ advertiserId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; @@ -13306,7 +13314,7 @@ export namespace displayvideo_v4 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; } @@ -13324,7 +13332,7 @@ export namespace displayvideo_v4 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; } @@ -13354,7 +13362,7 @@ export namespace displayvideo_v4 { */ pageToken?: string; /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_COMBINED_AUDIENCE` * `TARGETING_TYPE_CUSTOM_LIST` * `TARGETING_TYPE_FIRST_PARTY_AND_PARTNER_AUDIENCE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_GOOGLE_AUDIENCE` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_LOOKALIKE_AUDIENCE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO` */ targetingType?: string; } @@ -20440,7 +20448,7 @@ export namespace displayvideo_v4 { * advertiserId: '[^/]+', * // Required. The ID of the line item the assigned targeting option will belong to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * targetingType: '[^/]+', * * // Request body metadata @@ -20706,7 +20714,7 @@ export namespace displayvideo_v4 { * assignedTargetingOptionId: '[^/]+', * // Required. The ID of the line item the assigned targeting option belongs to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * targetingType: '[^/]+', * }, * ); @@ -20860,7 +20868,7 @@ export namespace displayvideo_v4 { * assignedTargetingOptionId: '[^/]+', * // Required. The ID of the line item the assigned targeting option belongs to. * lineItemId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -21078,7 +21086,7 @@ export namespace displayvideo_v4 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListLineItemAssignedTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * // Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * targetingType: '[^/]+', * }, * ); @@ -21208,7 +21216,7 @@ export namespace displayvideo_v4 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ targetingType?: string; @@ -21231,7 +21239,7 @@ export namespace displayvideo_v4 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` */ targetingType?: string; } @@ -21249,7 +21257,7 @@ export namespace displayvideo_v4 { */ lineItemId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -21279,7 +21287,7 @@ export namespace displayvideo_v4 { */ pageToken?: string; /** - * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) + * Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_AUDIO_CONTENT_TYPE` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_BUSINESS_CHAIN` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_CONTENT_DURATION` * `TARGETING_TYPE_CONTENT_GENRE` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_STREAM_TYPE` * `TARGETING_TYPE_DAY_AND_TIME` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_INVENTORY_SOURCE_DEAL` * `TARGETING_TYPE_INVENTORY_SOURCE_GROUP` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_NEGATIVE_KEYWORD_LIST` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_POI` * `TARGETING_TYPE_PROXIMITY_LOCATION_LIST` * `TARGETING_TYPE_REGIONAL_LOCATION_LIST` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_THIRD_PARTY_VERIFIER` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_YOUTUBE_CHANNEL` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) * `TARGETING_TYPE_YOUTUBE_VIDEO` (only for `LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_VIDEO_SEQUENCE` line items) */ targetingType?: string; } @@ -25791,7 +25799,7 @@ export namespace displayvideo_v4 { * { * // Required. The ID of the advertiser. * advertiserId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * targetingType: '[^/]+', * * // Request body metadata @@ -26055,7 +26063,7 @@ export namespace displayvideo_v4 { * advertiserId: '[^/]+', * // Required. The ID of the assigned targeting option to delete. * assignedTargetingOptionId: '[^/]+', - * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * // Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * targetingType: '[^/]+', * }, * ); @@ -26543,7 +26551,7 @@ export namespace displayvideo_v4 { */ advertiserId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ targetingType?: string; @@ -26562,7 +26570,7 @@ export namespace displayvideo_v4 { */ assignedTargetingOptionId?: string; /** - * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` + * Required. Identifies the type of this assigned targeting option. Supported targeting types: * `TARGETING_TYPE_CHANNEL` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_OMID` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_YOUTUBE_VIDEO` * `TARGETING_TYPE_YOUTUBE_CHANNEL` */ targetingType?: string; } @@ -38549,7 +38557,7 @@ export namespace displayvideo_v4 { * advertiserId: 'placeholder-value', * // Required. The ID of the of targeting option to retrieve. * targetingOptionId: '[^/]+', - * // Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * // Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` * targetingType: '[^/]+', * }); * console.log(res.data); @@ -38732,7 +38740,7 @@ export namespace displayvideo_v4 { * pageSize: 'placeholder-value', * // A token identifying a page of results the server should return. Typically, this is the value of next_page_token returned from the previous call to `ListTargetingOptions` method. If not specified, the first page of results will be returned. * pageToken: 'placeholder-value', - * // Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * // Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` * targetingType: '[^/]+', * }); * console.log(res.data); @@ -39012,7 +39020,7 @@ export namespace displayvideo_v4 { */ targetingOptionId?: string; /** - * Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * Required. The type of targeting option to retrieve. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` */ targetingType?: string; } @@ -39038,7 +39046,7 @@ export namespace displayvideo_v4 { */ pageToken?: string; /** - * Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` + * Required. The type of targeting option to be listed. Accepted values are: * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_AUCTION_PACKAGE` * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_VIDEO_PLAYER_SIZE` * `TARGETING_TYPE_USER_REWARDED_CONTENT` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_CONTENT_INSTREAM_POSITION` * `TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION` * `TARGETING_TYPE_DEVICE_TYPE` * `TARGETING_TYPE_BROWSER` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_ON_SCREEN_POSITION` * `TARGETING_TYPE_CARRIER_AND_ISP` * `TARGETING_TYPE_OPERATING_SYSTEM` * `TARGETING_TYPE_DEVICE_MAKE_MODEL` * `TARGETING_TYPE_ENVIRONMENT` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_VIEWABILITY` * `TARGETING_TYPE_AUTHORIZED_SELLER_STATUS` * `TARGETING_TYPE_LANGUAGE` * `TARGETING_TYPE_GEO_REGION` * `TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION` * `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION` * `TARGETING_TYPE_EXCHANGE` * `TARGETING_TYPE_SUB_EXCHANGE` * `TARGETING_TYPE_NATIVE_CONTENT_POSITION` * `TARGETING_TYPE_OMID` */ targetingType?: string; } diff --git a/src/apis/displayvideo/v5.ts b/src/apis/displayvideo/v5.ts new file mode 100644 index 0000000000..300fa423a6 --- /dev/null +++ b/src/apis/displayvideo/v5.ts @@ -0,0 +1,846 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-empty-interface */ +/* eslint-disable @typescript-eslint/no-namespace */ +/* eslint-disable no-irregular-whitespace */ + +import { + OAuth2Client, + JWT, + Compute, + UserRefreshClient, + BaseExternalAccountClient, + GaxiosResponseWithHTTP2, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace displayvideo_v5 { + export interface Options extends GlobalOptions { + version: 'v5'; + } + + interface StandardParameters { + /** + * Auth client or API Key for the request + */ + auth?: + | string + | OAuth2Client + | JWT + | Compute + | UserRefreshClient + | BaseExternalAccountClient + | GoogleAuth; + + /** + * V1 error format. + */ + '$.xgafv'?: string; + /** + * OAuth access token. + */ + access_token?: string; + /** + * Data format for response. + */ + alt?: string; + /** + * JSONP + */ + callback?: string; + /** + * Selector specifying which fields to include in a partial response. + */ + fields?: string; + /** + * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. + */ + key?: string; + /** + * OAuth 2.0 token for the current user. + */ + oauth_token?: string; + /** + * Returns response with indentations and line breaks. + */ + prettyPrint?: boolean; + /** + * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. + */ + quotaUser?: string; + /** + * Legacy upload protocol for media (e.g. "media", "multipart"). + */ + uploadType?: string; + /** + * Upload protocol for media (e.g. "raw", "multipart"). + */ + upload_protocol?: string; + } + + /** + * Display & Video 360 API + * + * Display & Video 360 API allows users to automate complex Display & Video 360 workflows, such as creating insertion orders and setting targeting options for individual line items. + * + * @example + * ```js + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v5'); + * ``` + */ + export class Displayvideo { + context: APIRequestContext; + media: Resource$Media; + sdfdownloadtasks: Resource$Sdfdownloadtasks; + sdfuploadtasks: Resource$Sdfuploadtasks; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.media = new Resource$Media(this.context); + this.sdfdownloadtasks = new Resource$Sdfdownloadtasks(this.context); + this.sdfuploadtasks = new Resource$Sdfuploadtasks(this.context); + } + } + + /** + * Media resource. + */ + export interface Schema$GoogleBytestreamMedia { + /** + * Name of the media resource. + */ + resourceName?: string | null; + } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$Operation { + /** + * If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. + */ + done?: boolean | null; + /** + * The error result of the operation in case of failure or cancellation. + */ + error?: Schema$Status; + /** + * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. + */ + metadata?: {[key: string]: any} | null; + /** + * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id\}`. + */ + name?: string | null; + /** + * The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + */ + response?: {[key: string]: any} | null; + } + /** + * The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). + */ + export interface Schema$Status { + /** + * The status code, which should be an enum value of google.rpc.Code. + */ + code?: number | null; + /** + * A list of messages that carry the error details. There is a common set of message types for APIs to use. + */ + details?: Array<{[key: string]: any}> | null; + /** + * A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client. + */ + message?: string | null; + } + + export class Resource$Media { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Downloads media. Download is supported on the URI `/download/{resource_name=**\}?alt=media.` **Note**: Download requests will not be successful without including `alt=media` query string. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v5'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/doubleclickbidmanager', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.media.download({ + * // Name of the media that is being downloaded. See ReadRequest.resource_name. + * resourceName: '.*', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "resourceName": "my_resourceName" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + download( + params: Params$Resource$Media$Download, + options: StreamMethodOptions + ): Promise>; + download( + params?: Params$Resource$Media$Download, + options?: MethodOptions + ): Promise>; + download( + params: Params$Resource$Media$Download, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + download( + params: Params$Resource$Media$Download, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + download( + params: Params$Resource$Media$Download, + callback: BodyResponseCallback + ): void; + download( + callback: BodyResponseCallback + ): void; + download( + paramsOrCallback?: + | Params$Resource$Media$Download + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Media$Download; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Media$Download; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/download/{+resourceName}').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['resourceName'], + pathParams: ['resourceName'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Uploads media. Upload is supported on the URI `/upload/media/{resource_name=**\}?upload_type=media.` **Note**: Upload requests will not be successful without including `upload_type=media` query string. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v5'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/doubleclickbidmanager', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.media.upload({ + * // Name of the media that is being downloaded. See ReadRequest.resource_name. + * resourceName: '.*', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "resourceName": "my_resourceName" + * // } + * }, + * media: { + * mimeType: 'placeholder-value', + * body: 'placeholder-value', + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "resourceName": "my_resourceName" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + upload( + params: Params$Resource$Media$Upload, + options: StreamMethodOptions + ): Promise>; + upload( + params?: Params$Resource$Media$Upload, + options?: MethodOptions + ): Promise>; + upload( + params: Params$Resource$Media$Upload, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + upload( + params: Params$Resource$Media$Upload, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + upload( + params: Params$Resource$Media$Upload, + callback: BodyResponseCallback + ): void; + upload(callback: BodyResponseCallback): void; + upload( + paramsOrCallback?: + | Params$Resource$Media$Upload + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Media$Upload; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Media$Upload; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/media/{+resourceName}').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + mediaUrl: (rootUrl + '/upload/media/{+resourceName}').replace( + /([^:]\/)\/+/g, + '$1' + ), + requiredParams: ['resourceName'], + pathParams: ['resourceName'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Media$Download extends StandardParameters { + /** + * Name of the media that is being downloaded. See ReadRequest.resource_name. + */ + resourceName?: string; + } + export interface Params$Resource$Media$Upload extends StandardParameters { + /** + * Name of the media that is being downloaded. See ReadRequest.resource_name. + */ + resourceName?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleBytestreamMedia; + + /** + * Media metadata + */ + media?: { + /** + * Media mime-type + */ + mimeType?: string; + + /** + * Media body contents + */ + body?: any; + }; + } + + export class Resource$Sdfdownloadtasks { + context: APIRequestContext; + operations: Resource$Sdfdownloadtasks$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = new Resource$Sdfdownloadtasks$Operations(this.context); + } + } + + export class Resource$Sdfdownloadtasks$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets the latest state of an asynchronous SDF download task operation. Clients should poll this method at intervals of 30 seconds. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v5'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/doubleclickbidmanager', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.sdfdownloadtasks.operations.get({ + * // The name of the operation resource. + * name: 'sdfdownloadtasks/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Sdfdownloadtasks$Operations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Sdfdownloadtasks$Operations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Sdfdownloadtasks$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Sdfdownloadtasks$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Sdfdownloadtasks$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Sdfdownloadtasks$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Sdfdownloadtasks$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Sdfdownloadtasks$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v5/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Sdfdownloadtasks$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + + export class Resource$Sdfuploadtasks { + context: APIRequestContext; + operations: Resource$Sdfuploadtasks$Operations; + constructor(context: APIRequestContext) { + this.context = context; + this.operations = new Resource$Sdfuploadtasks$Operations(this.context); + } + } + + export class Resource$Sdfuploadtasks$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets the latest state of an asynchronous SDF download task operation. Clients should poll this method at intervals of 30 seconds. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/displayvideo.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const displayvideo = google.displayvideo('v5'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/display-video', + * 'https://www.googleapis.com/auth/doubleclickbidmanager', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await displayvideo.sdfuploadtasks.operations.get({ + * // The name of the operation resource. + * name: 'sdfuploadtasks/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Sdfuploadtasks$Operations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Sdfuploadtasks$Operations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Sdfuploadtasks$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Sdfuploadtasks$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Sdfuploadtasks$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Sdfuploadtasks$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Sdfuploadtasks$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Sdfuploadtasks$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://displayvideo.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v5/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Sdfuploadtasks$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } +} diff --git a/src/apis/fcm/v1.ts b/src/apis/fcm/v1.ts index f5a31ab91a..ba52df4187 100644 --- a/src/apis/fcm/v1.ts +++ b/src/apis/fcm/v1.ts @@ -125,7 +125,7 @@ export namespace fcm_v1 { } /** - * A Background Sync message that is sent to an Android device. + * A Background Sync message that is sent to Android devices. */ export interface Schema$AndroidBackgroundSyncMessage {} /** @@ -178,7 +178,7 @@ export namespace fcm_v1 { */ export interface Schema$AndroidConfigV2 { /** - * Optional. Non-urgent background sync message to send to android devices. + * Optional. Non-urgent background sync message to send to Android devices. Delivery of these messages may be delayed or batched to optimize for battery. */ backgroundSync?: Schema$AndroidBackgroundSyncMessage; /** @@ -202,7 +202,7 @@ export namespace fcm_v1 { */ fcmOptions?: Schema$AndroidFcmOptions; /** - * Optional. User-facing notification to send to android devices. + * Optional. User-facing notification to send to Android devices. These messages are delivered immediately and are not delayed by battery optimizations. */ remoteNotification?: Schema$AndroidRemoteNotification; /** @@ -393,7 +393,7 @@ export namespace fcm_v1 { */ id?: number | null; /** - * Contains the URL of an image that is going to be displayed in a notification. If present, it will override google.firebase.fcm.v1.Notification.image. + * An HTTPS URL of an image to display in the notification. If present, it overrides google.firebase.fcm.v1.Notification.image. */ image?: string | null; /** @@ -450,7 +450,7 @@ export namespace fcm_v1 { visibility?: string | null; } /** - * A Remote Notification message that is sent to an Android device. + * A Remote Notification message that is sent to Android devices. */ export interface Schema$AndroidRemoteNotification { /** diff --git a/src/apis/homegraph/v1.ts b/src/apis/homegraph/v1.ts index 6ca41b3e57..090ca1cb3f 100644 --- a/src/apis/homegraph/v1.ts +++ b/src/apis/homegraph/v1.ts @@ -409,6 +409,19 @@ export namespace homegraph_v1 { */ deviceId?: string | null; } + /** + * Dynamic JSON trait state payload conforming to `json_trait_schema.md`. Used for Category 2 (vendor Matter clusters) and Category 3 (non-Matter capabilities) traits across all wire and internal paths, and for Category 1 traits on external JSON-only wire paths (e.g., `Query` with `JSON_TRAIT_ONLY`). + */ + export interface Schema$JsonTrait { + /** + * Optional. Trait attribute map conforming to the trait's registered JSON Schema. + */ + data?: {[key: string]: any} | null; + /** + * Required. Canonical symbolic trait ID per `json_trait_schema.md`: - Standard Matter (Cat 1): `matter.` (e.g., `matter.thermostat`) - Google / vendor Matter (Cat 1/2): `matter..` (e.g., `matter.google.`, `matter.eve.utility`) - Non-Matter (Cat 3, any provider incl. Google): `ghp..` (e.g., `ghp.acme.warranty`, `ghp.google.`) + */ + id?: string | null; + } export interface Schema$MediaUrlsStruct { /** * URL for a dash manifest for playback @@ -707,6 +720,10 @@ export namespace homegraph_v1 { * Other metadata for the trait. The time the client update was committed in the server. */ commitTime?: string | null; + /** + * Contains the dynamic JSON trait payload. + */ + jsonTrait?: Schema$JsonTrait; /** * The custom timestamp supplied by the provider during a ReportStateAndNotification update (if provided). This field is returned as part of the `QueryResponse`. */ diff --git a/src/apis/looker/v1.ts b/src/apis/looker/v1.ts index b4bf21c734..d56e69d05a 100644 --- a/src/apis/looker/v1.ts +++ b/src/apis/looker/v1.ts @@ -129,7 +129,7 @@ export namespace looker_v1 { */ export interface Schema$AdminSettings { /** - * Email domain allowlist for the instance. + * Optional. Email domain allowlist for the instance. */ allowedEmailDomains?: string[] | null; } @@ -201,11 +201,11 @@ export namespace looker_v1 { */ export interface Schema$CustomDomain { /** - * Domain name. + * Optional. Domain name. */ domain?: string | null; /** - * Domain state. + * Output only. Domain state. */ state?: string | null; } @@ -252,7 +252,7 @@ export namespace looker_v1 { */ export interface Schema$EncryptionConfig { /** - * Name of the CMEK key in KMS (input parameter). + * Optional. Immutable. Name of the CMEK key in KMS (input parameter). */ kmsKeyName?: string | null; /** @@ -302,6 +302,10 @@ export namespace looker_v1 { * Overall export metrics, timing, and component telemetry. */ exportMetrics?: Schema$ExportMetrics; + /** + * A string of digits representing the number of microseconds since the Unix epoch when the export was created. Used to identify the cloned source Elite System Activity (ESA) BigQuery dataset for O2C direct dataset migration. + */ + exportTime?: string | null; /** * List of files created as part of export artifact (excluding the metadata). The paths are relative to the folder containing the metadata. */ @@ -401,7 +405,7 @@ export namespace looker_v1 { */ acceleratedSecurityPatchEnabled?: boolean | null; /** - * Looker Instance Admin settings. + * Optional. Looker Instance Admin settings. */ adminSettings?: Schema$AdminSettings; /** @@ -417,7 +421,7 @@ export namespace looker_v1 { */ classType?: string | null; /** - * Network name in the consumer project. Format: `projects/{project\}/global/networks/{network\}`. Note that the consumer network may be in a different GCP project than the consumer project that is hosting the Looker Instance. + * Optional. Network name in the consumer project. Format: `projects/{project\}/global/networks/{network\}`. Note that the consumer network may be in a different GCP project than the consumer project that is hosting the Looker Instance. */ consumerNetwork?: string | null; /** @@ -433,11 +437,11 @@ export namespace looker_v1 { */ createTime?: string | null; /** - * Custom domain configuration for the instance. + * Optional. Custom domain configuration for the instance. */ customDomain?: Schema$CustomDomain; /** - * Maintenance denial period for this instance. + * Optional. Maintenance denial period for this instance. */ denyMaintenancePeriod?: Schema$DenyMaintenancePeriod; /** @@ -445,7 +449,7 @@ export namespace looker_v1 { */ egressPublicIp?: string | null; /** - * Encryption configuration (CMEK). Only set if CMEK has been enabled on the instance. + * Optional. Encryption configuration (CMEK). Only set if CMEK has been enabled on the instance. */ encryptionConfig?: Schema$EncryptionConfig; /** @@ -485,11 +489,11 @@ export namespace looker_v1 { */ lookerVersion?: string | null; /** - * Maintenance schedule for this instance. + * Output only. Maintenance schedule for this instance. */ maintenanceSchedule?: Schema$MaintenanceSchedule; /** - * Maintenance window for this instance. + * Optional. Maintenance window for this instance. */ maintenanceWindow?: Schema$MaintenanceWindow; /** @@ -497,7 +501,7 @@ export namespace looker_v1 { */ name?: string | null; /** - * Looker instance OAuth login settings. + * Optional. Looker instance OAuth login settings. */ oauthConfig?: Schema$OAuthConfig; /** @@ -505,11 +509,11 @@ export namespace looker_v1 { */ periodicExportConfig?: Schema$PeriodicExportConfig; /** - * Platform edition. + * Optional. Platform edition. Marked as OPTIONAL for backward compatibility, though it is required during instance creation. */ platformEdition?: string | null; /** - * Whether private IP is enabled on the Looker instance. + * Optional. Whether private IP is enabled on the Looker instance. */ privateIpEnabled?: boolean | null; /** @@ -521,7 +525,7 @@ export namespace looker_v1 { */ pscEnabled?: boolean | null; /** - * Whether public IP is enabled on the Looker instance. + * Optional. Whether public IP is enabled on the Looker instance. */ publicIpEnabled?: boolean | null; /** @@ -529,7 +533,7 @@ export namespace looker_v1 { */ releaseChannel?: string | null; /** - * Name of a reserved IP address range within the Instance.consumer_network, to be used for private services access connection. May or may not be specified in a create request. + * Optional. Name of a reserved IP address range within the Instance.consumer_network, to be used for private services access connection. May or may not be specified in a create request. */ reservedRange?: string | null; /** diff --git a/src/apis/merchantapi/accounts_v1.ts b/src/apis/merchantapi/accounts_v1.ts index 587b9248b9..2ccd78f267 100644 --- a/src/apis/merchantapi/accounts_v1.ts +++ b/src/apis/merchantapi/accounts_v1.ts @@ -982,7 +982,7 @@ export namespace merchantapi_accounts_v1 { */ export interface Schema$Homepage { /** - * Output only. Whether the homepage is claimed. See https://support.google.com/merchants/answer/176793. + * Output only. Whether the homepage is claimed. See [About online store URL verification](https://support.google.com/merchants/answer/176793). This field is also `true` if the account inherits the claim from its advanced account, or if the account is exempted from claiming, even when the homepage isn't claimed directly on the account. */ claimed?: boolean | null; /** @@ -6389,7 +6389,7 @@ export namespace merchantapi_accounts_v1 { } /** - * Unclaims a store's homepage. Executing this method requires admin access. + * Unclaims a store's homepage. Executing this method requires admin access. This method only removes a claim made directly on the account. If the account inherits the claim from its advanced account (for example, from an advanced account that is exempted from claiming), the homepage stays claimed: the method returns a successful response and `claimed` remains `true`. If the account itself is exempted from claiming, the method returns a `FAILED_PRECONDITION` error. * @example * ```js * // Before running the sample: diff --git a/src/apis/merchantapi/accounts_v1beta.ts b/src/apis/merchantapi/accounts_v1beta.ts index 50f5150c6d..431586e46d 100644 --- a/src/apis/merchantapi/accounts_v1beta.ts +++ b/src/apis/merchantapi/accounts_v1beta.ts @@ -932,7 +932,7 @@ export namespace merchantapi_accounts_v1beta { */ export interface Schema$Homepage { /** - * Output only. Whether the homepage is claimed. See https://support.google.com/merchants/answer/176793. + * Output only. Whether the homepage is claimed. See [About online store URL verification](https://support.google.com/merchants/answer/176793). This field is also `true` if the account inherits the claim from its advanced account, or if the account is exempted from claiming, even when the homepage isn't claimed directly on the account. */ claimed?: boolean | null; /** @@ -6324,7 +6324,7 @@ export namespace merchantapi_accounts_v1beta { } /** - * Unclaims a store's homepage. Executing this method requires admin access. + * Unclaims a store's homepage. Executing this method requires admin access. This method only removes a claim made directly on the account. If the account inherits the claim from its advanced account (for example, from an advanced account that is exempted from claiming), the homepage stays claimed: the method returns a successful response and `claimed` remains `true`. If the account itself is exempted from claiming, the method returns a `FAILED_PRECONDITION` error. * @example * ```js * // Before running the sample: diff --git a/src/apis/networkmanagement/v1.ts b/src/apis/networkmanagement/v1.ts index e9cb483d9d..c16c92a596 100644 --- a/src/apis/networkmanagement/v1.ts +++ b/src/apis/networkmanagement/v1.ts @@ -1516,7 +1516,7 @@ export namespace networkmanagement_v1 { */ routerUri?: string | null; /** - * The number of the NAT rule that was matched. + * The number of the NAT rule that was matched. Only valid when `type` is CLOUD_NAT. */ ruleNumber?: number | null; /** @@ -4845,7 +4845,7 @@ export namespace networkmanagement_v1 { } /** - * Creates a new Connectivity Test. After you create a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. If the endpoint specifications in `ConnectivityTest` are invalid (for example, containing non-existent resources in the network, or you don't have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of AMBIGUOUS. For more information, see the Connectivity Test documentation. + * Creates a new Connectivity Test. After you create a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. If the endpoint specifications in `ConnectivityTest` are invalid (for example, containing non-existent resources in the network, or you don't have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. For more information, see the Connectivity Test documentation. * @example * ```js * // Before running the sample: @@ -5481,13 +5481,13 @@ export namespace networkmanagement_v1 { * // Do the magic * const res = * await networkmanagement.projects.locations.global.connectivityTests.list({ - * // Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `\>`, `<=`, `\>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar + * // Optional. Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `\>`, `<=`, `\>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar * filter: 'placeholder-value', - * // Field to use to sort the list. + * // Optional. Field to use to sort the list. * orderBy: 'placeholder-value', - * // Number of `ConnectivityTests` to return. + * // Optional. Number of `ConnectivityTests` to return. * pageSize: 'placeholder-value', - * // Page token from an earlier query, as returned in `next_page_token`. + * // Optional. Page token from an earlier query, as returned in `next_page_token`. * pageToken: 'placeholder-value', * // Required. The parent resource of the Connectivity Tests: `projects/{project_id\}/locations/global` * parent: 'projects/my-project/locations/global', @@ -5606,7 +5606,7 @@ export namespace networkmanagement_v1 { } /** - * Updates the configuration of an existing `ConnectivityTest`. After you update a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. The Reachability state in the test resource is updated with the new result. If the endpoint specifications in `ConnectivityTest` are invalid (for example, they contain non-existent resources in the network, or the user does not have read permissions to the network configurations of listed projects), then the reachability result returns a value of UNKNOWN. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. See the documentation in `ConnectivityTest` for more details. + * Updates the configuration of an existing `ConnectivityTest`. After you update a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. The Reachability state in the test resource is updated with the new result. If the endpoint specifications in `ConnectivityTest` are invalid (for example, they contain non-existent resources in the network, or the user does not have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. See the documentation in `ConnectivityTest` for more details. * @example * ```js * // Before running the sample: @@ -6263,19 +6263,19 @@ export namespace networkmanagement_v1 { } export interface Params$Resource$Projects$Locations$Global$Connectivitytests$List extends StandardParameters { /** - * Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `\>`, `<=`, `\>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar + * Optional. Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `\>`, `<=`, `\>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar */ filter?: string; /** - * Field to use to sort the list. + * Optional. Field to use to sort the list. */ orderBy?: string; /** - * Number of `ConnectivityTests` to return. + * Optional. Number of `ConnectivityTests` to return. */ pageSize?: number; /** - * Page token from an earlier query, as returned in `next_page_token`. + * Optional. Page token from an earlier query, as returned in `next_page_token`. */ pageToken?: string; /** diff --git a/src/apis/networkmanagement/v1beta1.ts b/src/apis/networkmanagement/v1beta1.ts index 751c6492a3..585fe69cca 100644 --- a/src/apis/networkmanagement/v1beta1.ts +++ b/src/apis/networkmanagement/v1beta1.ts @@ -1306,7 +1306,7 @@ export namespace networkmanagement_v1beta1 { */ routerUri?: string | null; /** - * The number of the NAT rule that was matched. + * The number of the NAT rule that was matched. Only valid when `type` is CLOUD_NAT. */ ruleNumber?: number | null; /** @@ -4412,7 +4412,7 @@ export namespace networkmanagement_v1beta1 { } /** - * Creates a new Connectivity Test. After you create a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. If the endpoint specifications in `ConnectivityTest` are invalid (for example, containing non-existent resources in the network, or you don't have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of AMBIGUOUS. For more information, see the Connectivity Test documentation. + * Creates a new Connectivity Test. After you create a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. If the endpoint specifications in `ConnectivityTest` are invalid (for example, containing non-existent resources in the network, or you don't have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. For more information, see the Connectivity Test documentation. * @example * ```js * // Before running the sample: @@ -5048,13 +5048,13 @@ export namespace networkmanagement_v1beta1 { * // Do the magic * const res = * await networkmanagement.projects.locations.global.connectivityTests.list({ - * // Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `\>`, `<=`, `\>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar + * // Optional. Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `\>`, `<=`, `\>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar * filter: 'placeholder-value', - * // Field to use to sort the list. + * // Optional. Field to use to sort the list. * orderBy: 'placeholder-value', - * // Number of `ConnectivityTests` to return. + * // Optional. Number of `ConnectivityTests` to return. * pageSize: 'placeholder-value', - * // Page token from an earlier query, as returned in `next_page_token`. + * // Optional. Page token from an earlier query, as returned in `next_page_token`. * pageToken: 'placeholder-value', * // Required. The parent resource of the Connectivity Tests: `projects/{project_id\}/locations/global` * parent: 'projects/my-project/locations/global', @@ -5173,7 +5173,7 @@ export namespace networkmanagement_v1beta1 { } /** - * Updates the configuration of an existing `ConnectivityTest`. After you update a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. The Reachability state in the test resource is updated with the new result. If the endpoint specifications in `ConnectivityTest` are invalid (for example, they contain non-existent resources in the network, or the user does not have read permissions to the network configurations of listed projects), then the reachability result returns a value of UNKNOWN. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. See the documentation in `ConnectivityTest` for more details. + * Updates the configuration of an existing `ConnectivityTest`. After you update a test, the reachability analysis is performed as part of the long running operation, which completes when the analysis completes. The Reachability state in the test resource is updated with the new result. If the endpoint specifications in `ConnectivityTest` are invalid (for example, they contain non-existent resources in the network, or the user does not have read permissions to the network configurations of listed projects), then the reachability result returns a value of `UNKNOWN`. If the endpoint specifications in `ConnectivityTest` are incomplete, the reachability result returns a value of `AMBIGUOUS`. See the documentation in `ConnectivityTest` for more details. * @example * ```js * // Before running the sample: @@ -5833,19 +5833,19 @@ export namespace networkmanagement_v1beta1 { } export interface Params$Resource$Projects$Locations$Global$Connectivitytests$List extends StandardParameters { /** - * Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `\>`, `<=`, `\>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar + * Optional. Lists the `ConnectivityTests` that match the filter expression. A filter expression filters the resources listed in the response. The expression must be of the form ` ` where operators: `<`, `\>`, `<=`, `\>=`, `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is roughly synonymous with equality). can refer to a proto or JSON field, or a synthetic field. Field names can be camelCase or snake_case. Examples: - Filter by name: name = "projects/proj-1/locations/global/connectivityTests/test-1 - Filter by labels: - Resources that have a key called `foo` labels.foo:* - Resources that have a key called `foo` whose value is `bar` labels.foo = bar */ filter?: string; /** - * Field to use to sort the list. + * Optional. Field to use to sort the list. */ orderBy?: string; /** - * Number of `ConnectivityTests` to return. + * Optional. Number of `ConnectivityTests` to return. */ pageSize?: number; /** - * Page token from an earlier query, as returned in `next_page_token`. + * Optional. Page token from an earlier query, as returned in `next_page_token`. */ pageToken?: string; /** diff --git a/src/apis/oracledatabase/v1.ts b/src/apis/oracledatabase/v1.ts index 630070fd2a..b5e37c0e2f 100644 --- a/src/apis/oracledatabase/v1.ts +++ b/src/apis/oracledatabase/v1.ts @@ -1051,6 +1051,10 @@ export namespace oracledatabase_v1 { * Optional. Immutable. The name of the VPC network. Format: projects/{project\}/global/networks/{network\} */ network?: string | null; + /** + * Optional. Immutable. The name of the OdbDnsZone for using custom domain name for the VM Cluster. Format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}/odbDnsZones/{odb_dns_zone\} + */ + odbDnsZone?: string | null; /** * Optional. Immutable. The name of the OdbNetwork associated with the VM Cluster. Format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\} It is optional but if specified, this should match the parent ODBNetwork of the odb_subnet and backup_odb_subnet. */ @@ -1213,6 +1217,19 @@ export namespace oracledatabase_v1 { */ vmFileSystemStorageType?: string | null; } + /** + * Contains the name and datatype of a column in a SQL Result. + */ + export interface Schema$Column { + /** + * Required. Name of the column. + */ + name?: string | null; + /** + * Required. Database-specific type name (e.g., "VARCHAR2(255)", "NUMBER", "DATE", "CLOB") + */ + type?: string | null; + } /** * The request for `CloudExadataInfrastructure.ConfigureExascale`. */ @@ -1333,6 +1350,59 @@ export namespace oracledatabase_v1 { */ name?: string | null; } + /** + * Represents DatabaseConnection resource. + */ + export interface Schema$DatabaseConnection { + /** + * Required. Immutable. Oracle Easy Connect or TNS connection string. Example: "your-db-host.example.com:1521/YOUR_SERVICE_NAME" + */ + connectionString?: string | null; + /** + * Output only. The create time of the resource. + */ + createTime?: string | null; + /** + * Optional. Immutable. User-friendly display name for the connection. + */ + displayName?: string | null; + /** + * Optional. Optional: Labels as key-value pairs to organize the resource. + */ + labels?: {[key: string]: string} | null; + /** + * Output only. Additional information about the current state of the connection. + */ + lifecycleDetails?: string | null; + /** + * Identifier. The resource name of the DatabaseConnection. Format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\} + */ + name?: string | null; + /** + * Optional. Immutable. For Oracle Database@Google cloud resources. Format: projects/{project\}/locations/{location\}/odbNetworks/{odbNetwork\} + */ + odbNetwork?: string | null; + /** + * Optional. The resource name of the GCP Secret Manager secret version containing the password for the specified username. Format: projects/{project\}/secrets/{secret_id\}/versions/{version_id\} The service's Per-Product Per-Project Service Account (P4SA) must have the 'secretmanager.secretAccessor' permission on this secret. + */ + passwordSecretVersion?: string | null; + /** + * Output only. The current state of the connection. + */ + state?: string | null; + /** + * Output only. The update time of the resource. + */ + updateTime?: string | null; + /** + * Optional. Immutable. The default database username to use for connections. + */ + username?: string | null; + /** + * Optional. Optional: The resource name of the GCP Secret Manager secret version containing base64 encoded content of the Oracle Wallet ZIP file required for mTLS/TLS connections. Format: projects/{project\}/secrets/{secret_id\}/versions/{version_id\} The service's Per-Product Per-Project Service Account (P4SA) must have the 'secretmanager.secretAccessor' permission on this secret. + */ + walletSecretVersion?: string | null; + } /** * The connection string profile to allow clients to group. https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/DatabaseConnectionStringProfile */ @@ -2253,6 +2323,53 @@ export namespace oracledatabase_v1 { */ vmClusterIds?: string[] | null; } + /** + * Any additional metadata information regarding the execution of the SQL + */ + export interface Schema$ExecuteSqlMetadata { + /** + * The time duration taken to execute the sql statement. + */ + executionDuration?: string | null; + /** + * Message related to SQL execution. This field can be used to convey size limit related message. + */ + message?: string | null; + /** + * Set to true if SQL returned a result set larger than the acceptable response size limits and the result was truncated. + */ + partialResult?: boolean | null; + /** + * Output only. Status of SQL execution. + */ + status?: string | null; + } + /** + * The request for `DatabaseConnection.ExecuteSql`. + */ + export interface Schema$ExecuteSqlRequest { + /** + * Optional. Optional: Bind variables (parameters) to be used with the SQL statement. Supports named bind variables (e.g., :dept_id, :status in Oracle SQL) or positional parameters (:1, :2). + */ + params?: Schema$SqlParameter[]; + /** + * Required. The SQL statement to execute. + */ + sqlStatement?: string | null; + } + /** + * Execute a SQL statement response. + */ + export interface Schema$ExecuteSqlResponse { + /** + * Any additional metadata information regarding the execution of the sql statement. + */ + metadata?: Schema$ExecuteSqlMetadata; + /** + * SqlResult represents the results for the execution of sql statements. + */ + sqlResults?: Schema$SqlResult[]; + } /** * The request for `OracleDatabase.FailoverAutonomousDatabase`. */ @@ -4446,6 +4563,23 @@ export namespace oracledatabase_v1 { */ nextPageToken?: string | null; } + /** + * The response for `DatabaseConnection.List`. + */ + export interface Schema$ListDatabaseConnectionsResponse { + /** + * The list of DatabaseConnections. + */ + databaseConnections?: Schema$DatabaseConnection[]; + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Unreachable locations when listing resources across all locations using wildcard location '-'. + */ + unreachable?: string[] | null; + } /** * The response for `Database.List`. */ @@ -4746,6 +4880,23 @@ export namespace oracledatabase_v1 { */ nextPageToken?: string | null; } + /** + * The response for `OdbDnsZone.List`. + */ + export interface Schema$ListOdbDnsZonesResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * The list of OdbDnsZones. + */ + odbDnsZones?: Schema$OdbDnsZone[]; + /** + * Unreachable locations when listing resources across all locations using wildcard location '-'. + */ + unreachable?: string[] | null; + } /** * The response for `OdbNetwork.List`. */ @@ -4928,6 +5079,31 @@ export namespace oracledatabase_v1 { */ uri?: string | null; } + /** + * Represents OdbDnsZone resource. + */ + export interface Schema$OdbDnsZone { + /** + * Output only. The date and time that the OdbDnsZone was created. + */ + createTime?: string | null; + /** + * Required. The DNS suffix for the zone. Ex: abc.example.com. + */ + domain?: string | null; + /** + * Optional. Labels or tags associated with the resource. + */ + labels?: {[key: string]: string} | null; + /** + * Identifier. The name of the OdbDnsZone resource in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}/odbDnsZones/{odb_dns_zone\} + */ + name?: string | null; + /** + * Output only. State of the OdbDnsZone. + */ + state?: string | null; + } /** * Represents OdbNetwork resource. */ @@ -4956,6 +5132,14 @@ export namespace oracledatabase_v1 { * Required. The name of the VPC network in the following format: projects/{project\}/global/networks/{network\} */ network?: string | null; + /** + * Output only. Indicates whether the OdbNetwork is currently reconciling changes. + */ + reconciling?: boolean | null; + /** + * Optional. Configuration to enable the service (Oracledatabase@Google Cloud) to establish connectivity to the database. This should be specified if you intend to associate this OdbNetwork with a DatabaseConnection resource to `ExecuteSQL` on the database, or to create a ServiceIntegration with the Database. Please don't specify it otherwise to avoid complicating the network setup. + */ + serviceConnectivityConfig?: Schema$ServiceConnectivityConfig; /** * Output only. State of the ODB Network. */ @@ -5189,6 +5373,15 @@ export namespace oracledatabase_v1 { */ uri?: string | null; } + /** + * Configuration for a Private Service Connect (PSC) interface used by Oracledatabase@Google Cloud to establish private connectivity to the database. + */ + export interface Schema$PscInterfaceConfig { + /** + * Optional. The resource name of the Network Attachment that Oracledatabase@Google Cloud will use to establish private connectivity to the database via a Private Service Connect Interface (PSC-I). Format: projects/{project\}/regions/{region\}/networkAttachments/{network_attachment\} + */ + networkAttachment?: string | null; + } /** * Request message for RefreshAutonomousDatabase method. */ @@ -5237,6 +5430,15 @@ export namespace oracledatabase_v1 { */ restoreTime?: string | null; } + /** + * A single row from a sql result. + */ + export interface Schema$Row { + /** + * List of values in a row of sql result. + */ + values?: Schema$Value[]; + } /** * Details of scheduled operation. https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/ScheduledOperationDetails */ @@ -5254,6 +5456,15 @@ export namespace oracledatabase_v1 { */ stopTime?: Schema$TimeOfDay; } + /** + * Configuration to enable the service (Oracledatabase@Google Cloud) to establish connectivity to the database. This should be specified if you intend to associate this OdbNetwork with a DatabaseConnection resource to `ExecuteSQL` on the database, or to create a ServiceIntegration with the Database. Please don't specify it otherwise to avoid complicating the network setup. + */ + export interface Schema$ServiceConnectivityConfig { + /** + * Optional. Configuration for Private Service Connect (PSC) interface. + */ + pscInterfaceConfig?: Schema$PscInterfaceConfig; + } /** * The source configuration for the standby Autonomous Database. */ @@ -5303,6 +5514,40 @@ export namespace oracledatabase_v1 { */ useLatestAvailableBackup?: boolean | null; } + /** + * Represents a bind variable (parameter) for SQL execution. + */ + export interface Schema$SqlParameter { + /** + * Optional. The name of the SQL bind parameter (excluding the leading colon, e.g. "id"). If omitted, parameters bind positionally based on their order in the list. + */ + name?: string | null; + /** + * Optional. Optional: Datatype hint for the parameter (e.g., "VARCHAR2", "NUMBER", "DATE", "TIMESTAMP"). If omitted, the Oracle driver will infer the type from the value string. + */ + typeName?: string | null; + /** + * Required. Use protobuf.Value so clients can pass ints, bools, and strings natively. + */ + value?: any | null; + } + /** + * SqlResult represents the result for the execution of a sql statement. + */ + export interface Schema$SqlResult { + /** + * Optional. The number of rows affected by DML statements (e.g., INSERT, UPDATE, DELETE, MERGE). Unset or 0 for SELECT / DDL statements. + */ + affectedRowCount?: string | null; + /** + * List of columns included in the result, including data type. + */ + columns?: Schema$Column[]; + /** + * Rows returned by the SQL statement. + */ + rows?: Schema$Row[]; + } /** * The request for `AutonomousDatabase.Start`. */ @@ -5379,6 +5624,23 @@ export namespace oracledatabase_v1 { */ message?: string | null; } + /** + * Request message for `DatabaseConnection.TestDatabaseConnection`. + */ + export interface Schema$TestDatabaseConnectionRequest {} + /** + * Response message for `DatabaseConnection.TestDatabaseConnection`. + */ + export interface Schema$TestDatabaseConnectionResponse { + /** + * Error message if the test connection failed. + */ + errorMessage?: string | null; + /** + * Whether the test connection was successful. + */ + success?: boolean | null; + } /** * Request message for TestGoldengateConnectionAssignment. */ @@ -5439,6 +5701,19 @@ export namespace oracledatabase_v1 { */ version?: string | null; } + /** + * A single value in a row from a sql result. + */ + export interface Schema$Value { + /** + * Set to true if the cell value is NULL. + */ + nullValue?: boolean | null; + /** + * The cell value represented in string format. Timestamps should be converted using RFC3339Nano format. + */ + value?: string | null; + } export class Resource$Projects { context: APIRequestContext; @@ -5458,6 +5733,7 @@ export namespace oracledatabase_v1 { cloudExadataInfrastructures: Resource$Projects$Locations$Cloudexadatainfrastructures; cloudVmClusters: Resource$Projects$Locations$Cloudvmclusters; databaseCharacterSets: Resource$Projects$Locations$Databasecharactersets; + databaseConnections: Resource$Projects$Locations$Databaseconnections; databases: Resource$Projects$Locations$Databases; dbSystemInitialStorageSizes: Resource$Projects$Locations$Dbsysteminitialstoragesizes; dbSystems: Resource$Projects$Locations$Dbsystems; @@ -5498,6 +5774,8 @@ export namespace oracledatabase_v1 { ); this.databaseCharacterSets = new Resource$Projects$Locations$Databasecharactersets(this.context); + this.databaseConnections = + new Resource$Projects$Locations$Databaseconnections(this.context); this.databases = new Resource$Projects$Locations$Databases(this.context); this.dbSystemInitialStorageSizes = new Resource$Projects$Locations$Dbsysteminitialstoragesizes( @@ -9994,6 +10272,7 @@ export namespace oracledatabase_v1 { * // "labels": {}, * // "name": "my_name", * // "network": "my_network", + * // "odbDnsZone": "my_odbDnsZone", * // "odbNetwork": "my_odbNetwork", * // "odbSubnet": "my_odbSubnet", * // "properties": {} @@ -10301,6 +10580,7 @@ export namespace oracledatabase_v1 { * // "labels": {}, * // "name": "my_name", * // "network": "my_network", + * // "odbDnsZone": "my_odbDnsZone", * // "odbNetwork": "my_odbNetwork", * // "odbSubnet": "my_odbSubnet", * // "properties": {} @@ -10604,6 +10884,7 @@ export namespace oracledatabase_v1 { * // "labels": {}, * // "name": "my_name", * // "network": "my_network", + * // "odbDnsZone": "my_odbDnsZone", * // "odbNetwork": "my_odbNetwork", * // "odbSubnet": "my_odbSubnet", * // "properties": {} @@ -11143,14 +11424,14 @@ export namespace oracledatabase_v1 { parent?: string; } - export class Resource$Projects$Locations$Databases { + export class Resource$Projects$Locations$Databaseconnections { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Gets details of a single Database. + * Creates a new DatabaseConnection in a given project and location. * @example * ```js * // Before running the sample: @@ -11179,32 +11460,43 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.databases.get({ - * // Required. The name of the Database resource in the following format: projects/{project\}/locations/{region\}/databases/{database\} - * name: 'projects/my-project/locations/my-location/databases/my-database', - * }); + * const res = + * await oracledatabase.projects.locations.databaseConnections.create({ + * // Required. The ID of the DatabaseConnection to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * databaseConnectionId: 'placeholder-value', + * // Required. The parent value for the DatabaseConnection in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "connectionString": "my_connectionString", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "labels": {}, + * // "lifecycleDetails": "my_lifecycleDetails", + * // "name": "my_name", + * // "odbNetwork": "my_odbNetwork", + * // "passwordSecretVersion": "my_passwordSecretVersion", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "username": "my_username", + * // "walletSecretVersion": "my_walletSecretVersion" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "adminPassword": "my_adminPassword", - * // "adminPasswordSecretVersion": "my_adminPasswordSecretVersion", - * // "characterSet": "my_characterSet", - * // "createTime": "my_createTime", - * // "databaseId": "my_databaseId", - * // "dbHomeName": "my_dbHomeName", - * // "dbName": "my_dbName", - * // "dbUniqueName": "my_dbUniqueName", - * // "gcpOracleZone": "my_gcpOracleZone", + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "ncharacterSet": "my_ncharacterSet", - * // "ociUrl": "my_ociUrl", - * // "opsInsightsStatus": "my_opsInsightsStatus", - * // "pluggableDatabaseId": "my_pluggableDatabaseId", - * // "pluggableDatabaseName": "my_pluggableDatabaseName", - * // "properties": {}, - * // "tdeWalletPassword": "my_tdeWalletPassword", - * // "tdeWalletPasswordSecretVersion": "my_tdeWalletPasswordSecretVersion" + * // "response": {} * // } * } * @@ -11220,52 +11512,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Databases$Get, + create( + params: Params$Resource$Projects$Locations$Databaseconnections$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Databases$Get, + create( + params?: Params$Resource$Projects$Locations$Databaseconnections$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Databases$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Databaseconnections$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Databases$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Databaseconnections$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Databases$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Databaseconnections$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Databases$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Databaseconnections$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Databases$Get; + {}) as Params$Resource$Projects$Locations$Databaseconnections$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Databases$Get; + params = + {} as Params$Resource$Projects$Locations$Databaseconnections$Create; options = {}; } @@ -11279,29 +11572,32 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+parent}/databaseConnections').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all the Databases for the given project, location and DbSystem. + * Deletes a single DatabaseConnection. * @example * ```js * // Before running the sample: @@ -11330,22 +11626,22 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.databases.list({ - * // Optional. An expression for filtering the results of the request. list for container databases is supported only with a valid dbSystem (full resource name) filter in this format: `dbSystem="projects/{project\}/locations/{location\}/dbSystems/{dbSystemId\}"` - * filter: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 Databases will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. - * pageToken: 'placeholder-value', - * // Required. The parent resource name in the following format: projects/{project\}/locations/{region\} - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await oracledatabase.projects.locations.databaseConnections.delete({ + * // Required. The name of the resource in the following format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\}. + * name: 'projects/my-project/locations/my-location/databaseConnections/my-databaseConnection', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "databases": [], - * // "nextPageToken": "my_nextPageToken" + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -11361,54 +11657,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Databases$List, + delete( + params: Params$Resource$Projects$Locations$Databaseconnections$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Databases$List, + delete( + params?: Params$Resource$Projects$Locations$Databaseconnections$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Databases$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Databaseconnections$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Databases$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Databaseconnections$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Databases$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Databaseconnections$Delete, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Databases$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Databaseconnections$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Databases$List; + {}) as Params$Resource$Projects$Locations$Databaseconnections$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Databases$List; + params = + {} as Params$Resource$Projects$Locations$Databaseconnections$Delete; options = {}; } @@ -11422,64 +11717,29 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/databases').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Databases$Get extends StandardParameters { - /** - * Required. The name of the Database resource in the following format: projects/{project\}/locations/{region\}/databases/{database\} - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Databases$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. list for container databases is supported only with a valid dbSystem (full resource name) filter in this format: `dbSystem="projects/{project\}/locations/{location\}/dbSystems/{dbSystemId\}"` - */ - filter?: string; - /** - * Optional. The maximum number of items to return. If unspecified, a maximum of 50 Databases will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. - */ - pageToken?: string; - /** - * Required. The parent resource name in the following format: projects/{project\}/locations/{region\} - */ - parent?: string; - } - - export class Resource$Projects$Locations$Dbsysteminitialstoragesizes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists all the DbSystemInitialStorageSizes for the given project and location. + * Executes a SQL statement on a DatabaseConnection. * @example * ```js * // Before running the sample: @@ -11509,20 +11769,25 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.dbSystemInitialStorageSizes.list({ - * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 DbSystemInitialStorageSizes will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. - * pageToken: 'placeholder-value', - * // Required. The parent value for the DbSystemInitialStorageSize resource with the format: projects/{project\}/locations/{location\} - * parent: 'projects/my-project/locations/my-location', + * await oracledatabase.projects.locations.databaseConnections.executeSql({ + * // Required. The name of the DatabaseConnection in the following format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\}. + * name: 'projects/my-project/locations/my-location/databaseConnections/my-databaseConnection', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "params": [], + * // "sqlStatement": "my_sqlStatement" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "dbSystemInitialStorageSizes": [], - * // "nextPageToken": "my_nextPageToken" + * // "metadata": {}, + * // "sqlResults": [] * // } * } * @@ -11538,62 +11803,54 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, + executeSql( + params: Params$Resource$Projects$Locations$Databaseconnections$Executesql, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, + executeSql( + params?: Params$Resource$Projects$Locations$Databaseconnections$Executesql, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, + ): Promise>; + executeSql( + params: Params$Resource$Projects$Locations$Databaseconnections$Executesql, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, - callback: BodyResponseCallback + executeSql( + params: Params$Resource$Projects$Locations$Databaseconnections$Executesql, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + executeSql( + params: Params$Resource$Projects$Locations$Databaseconnections$Executesql, + callback: BodyResponseCallback ): void; - list( + executeSql(callback: BodyResponseCallback): void; + executeSql( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Databaseconnections$Executesql + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List; + {}) as Params$Resource$Projects$Locations$Databaseconnections$Executesql; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List; + {} as Params$Resource$Projects$Locations$Databaseconnections$Executesql; options = {}; } @@ -11607,55 +11864,32 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1/{+parent}/dbSystemInitialStorageSizes' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}:executeSql').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List extends StandardParameters { - /** - * Optional. The maximum number of items to return. If unspecified, a maximum of 50 DbSystemInitialStorageSizes will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. - */ - pageToken?: string; - /** - * Required. The parent value for the DbSystemInitialStorageSize resource with the format: projects/{project\}/locations/{location\} - */ - parent?: string; - } - - export class Resource$Projects$Locations$Dbsystems { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new DbSystem in a given project and location. + * Gets details of a single DatabaseConnection. * @example * ```js * // Before running the sample: @@ -11684,40 +11918,26 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.dbSystems.create({ - * // Required. The ID of the DbSystem to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - * dbSystemId: 'placeholder-value', - * // Required. The value for parent of the DbSystem in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, - * // "name": "my_name", - * // "ociUrl": "my_ociUrl", - * // "odbNetwork": "my_odbNetwork", - * // "odbSubnet": "my_odbSubnet", - * // "properties": {} - * // } - * }, + * const res = await oracledatabase.projects.locations.databaseConnections.get({ + * // Required. The name of the DatabaseConnection in the following format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\}. + * name: 'projects/my-project/locations/my-location/databaseConnections/my-databaseConnection', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "connectionString": "my_connectionString", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "labels": {}, + * // "lifecycleDetails": "my_lifecycleDetails", * // "name": "my_name", - * // "response": {} + * // "odbNetwork": "my_odbNetwork", + * // "passwordSecretVersion": "my_passwordSecretVersion", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "username": "my_username", + * // "walletSecretVersion": "my_walletSecretVersion" * // } * } * @@ -11733,52 +11953,54 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Dbsystems$Create, + get( + params: Params$Resource$Projects$Locations$Databaseconnections$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Dbsystems$Create, + get( + params?: Params$Resource$Projects$Locations$Databaseconnections$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Dbsystems$Create, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Databaseconnections$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Dbsystems$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Databaseconnections$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Dbsystems$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Databaseconnections$Get, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dbsystems$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Databaseconnections$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dbsystems$Create; + {}) as Params$Resource$Projects$Locations$Databaseconnections$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Dbsystems$Create; + params = + {} as Params$Resource$Projects$Locations$Databaseconnections$Get; options = {}; } @@ -11792,32 +12014,29 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/dbSystems').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single DbSystem. + * Lists DatabaseConnections in a given project and location. * @example * ```js * // Before running the sample: @@ -11846,21 +12065,25 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.dbSystems.delete({ - * // Required. The name of the DbSystem in the following format: projects/{project\}/locations/{location\}/dbSystems/{db_system\}. - * name: 'projects/my-project/locations/my-location/dbSystems/my-dbSystem', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', + * const res = await oracledatabase.projects.locations.databaseConnections.list({ + * // Optional. An expression for filtering the results of the request. + * filter: 'placeholder-value', + * // Optional. An expression for ordering the results of the request. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 DatabaseConnections will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent value for the DatabaseConnection in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "databaseConnections": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -11876,52 +12099,58 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Projects$Locations$Dbsystems$Delete, + list( + params: Params$Resource$Projects$Locations$Databaseconnections$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Dbsystems$Delete, + list( + params?: Params$Resource$Projects$Locations$Databaseconnections$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Dbsystems$Delete, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Databaseconnections$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Dbsystems$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Databaseconnections$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Dbsystems$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Databaseconnections$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dbsystems$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Databaseconnections$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dbsystems$Delete; + {}) as Params$Resource$Projects$Locations$Databaseconnections$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Dbsystems$Delete; + params = + {} as Params$Resource$Projects$Locations$Databaseconnections$List; options = {}; } @@ -11935,29 +12164,34 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+parent}/databaseConnections').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets details of a single DbSystem. + * Updates the parameters of a single DatabaseConnection. * @example * ```js * // Before running the sample: @@ -11986,24 +12220,44 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.dbSystems.get({ - * // Required. The name of the DbSystem in the following format: projects/{project\}/locations/{location\}/dbSystems/{db_system\}. - * name: 'projects/my-project/locations/my-location/dbSystems/my-dbSystem', - * }); + * const res = await oracledatabase.projects.locations.databaseConnections.patch( + * { + * // Identifier. The resource name of the DatabaseConnection. Format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\} + * name: 'projects/my-project/locations/my-location/databaseConnections/my-databaseConnection', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * // Optional. A mask specifying which fields in the DatabaseConnection should be updated. A field specified in the mask is overwritten. If a mask isn't provided then all the fields in the DatabaseConnection are overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "connectionString": "my_connectionString", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "labels": {}, + * // "lifecycleDetails": "my_lifecycleDetails", + * // "name": "my_name", + * // "odbNetwork": "my_odbNetwork", + * // "passwordSecretVersion": "my_passwordSecretVersion", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "username": "my_username", + * // "walletSecretVersion": "my_walletSecretVersion" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "ociUrl": "my_ociUrl", - * // "odbNetwork": "my_odbNetwork", - * // "odbSubnet": "my_odbSubnet", - * // "properties": {} + * // "response": {} * // } * } * @@ -12019,52 +12273,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Dbsystems$Get, + patch( + params: Params$Resource$Projects$Locations$Databaseconnections$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Dbsystems$Get, + patch( + params?: Params$Resource$Projects$Locations$Databaseconnections$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Dbsystems$Get, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Databaseconnections$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Dbsystems$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Databaseconnections$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Dbsystems$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Databaseconnections$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dbsystems$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Databaseconnections$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dbsystems$Get; + {}) as Params$Resource$Projects$Locations$Databaseconnections$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Dbsystems$Get; + params = + {} as Params$Resource$Projects$Locations$Databaseconnections$Patch; options = {}; } @@ -12079,7 +12334,7 @@ export namespace oracledatabase_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -12090,17 +12345,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all the DbSystems for the given project and location. + * Tests connectivity of a DatabaseConnection. * @example * ```js * // Before running the sample: @@ -12129,25 +12384,22 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.dbSystems.list({ - * // Optional. An expression for filtering the results of the request. - * filter: 'placeholder-value', - * // Optional. An expression for ordering the results of the request. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, at most 50 DbSystems will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. The parent value for DbSystems in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', + * const res = await oracledatabase.projects.locations.databaseConnections.test({ + * // Required. The name of the DatabaseConnection to test. Format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\} + * name: 'projects/my-project/locations/my-location/databaseConnections/my-databaseConnection', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, * }); * console.log(res.data); * * // Example response * // { - * // "dbSystems": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "errorMessage": "my_errorMessage", + * // "success": false * // } * } * @@ -12163,54 +12415,58 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Dbsystems$List, + test( + params: Params$Resource$Projects$Locations$Databaseconnections$Test, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Dbsystems$List, + test( + params?: Params$Resource$Projects$Locations$Databaseconnections$Test, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Dbsystems$List, + ): Promise>; + test( + params: Params$Resource$Projects$Locations$Databaseconnections$Test, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Dbsystems$List, + test( + params: Params$Resource$Projects$Locations$Databaseconnections$Test, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Dbsystems$List, - callback: BodyResponseCallback + test( + params: Params$Resource$Projects$Locations$Databaseconnections$Test, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + test( + callback: BodyResponseCallback + ): void; + test( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dbsystems$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Databaseconnections$Test + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dbsystems$List; + {}) as Params$Resource$Projects$Locations$Databaseconnections$Test; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Dbsystems$List; + params = + {} as Params$Resource$Projects$Locations$Databaseconnections$Test; options = {}; } @@ -12224,32 +12480,1995 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/dbSystems').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}:test').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Databaseconnections$Create extends StandardParameters { /** - * Updates the `labels` of a single DbSystem. + * Required. The ID of the DatabaseConnection to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + */ + databaseConnectionId?: string; + /** + * Required. The parent value for the DatabaseConnection in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DatabaseConnection; + } + export interface Params$Resource$Projects$Locations$Databaseconnections$Delete extends StandardParameters { + /** + * Required. The name of the resource in the following format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\}. + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Databaseconnections$Executesql extends StandardParameters { + /** + * Required. The name of the DatabaseConnection in the following format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\}. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExecuteSqlRequest; + } + export interface Params$Resource$Projects$Locations$Databaseconnections$Get extends StandardParameters { + /** + * Required. The name of the DatabaseConnection in the following format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\}. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Databaseconnections$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. + */ + filter?: string; + /** + * Optional. An expression for ordering the results of the request. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If unspecified, at most 50 DatabaseConnections will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent value for the DatabaseConnection in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Databaseconnections$Patch extends StandardParameters { + /** + * Identifier. The resource name of the DatabaseConnection. Format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\} + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + /** + * Optional. A mask specifying which fields in the DatabaseConnection should be updated. A field specified in the mask is overwritten. If a mask isn't provided then all the fields in the DatabaseConnection are overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DatabaseConnection; + } + export interface Params$Resource$Projects$Locations$Databaseconnections$Test extends StandardParameters { + /** + * Required. The name of the DatabaseConnection to test. Format: projects/{project\}/locations/{location\}/databaseConnections/{database_connection\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestDatabaseConnectionRequest; + } + + export class Resource$Projects$Locations$Databases { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets details of a single Database. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.databases.get({ + * // Required. The name of the Database resource in the following format: projects/{project\}/locations/{region\}/databases/{database\} + * name: 'projects/my-project/locations/my-location/databases/my-database', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "adminPassword": "my_adminPassword", + * // "adminPasswordSecretVersion": "my_adminPasswordSecretVersion", + * // "characterSet": "my_characterSet", + * // "createTime": "my_createTime", + * // "databaseId": "my_databaseId", + * // "dbHomeName": "my_dbHomeName", + * // "dbName": "my_dbName", + * // "dbUniqueName": "my_dbUniqueName", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "name": "my_name", + * // "ncharacterSet": "my_ncharacterSet", + * // "ociUrl": "my_ociUrl", + * // "opsInsightsStatus": "my_opsInsightsStatus", + * // "pluggableDatabaseId": "my_pluggableDatabaseId", + * // "pluggableDatabaseName": "my_pluggableDatabaseName", + * // "properties": {}, + * // "tdeWalletPassword": "my_tdeWalletPassword", + * // "tdeWalletPasswordSecretVersion": "my_tdeWalletPasswordSecretVersion" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Databases$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Databases$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Databases$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Databases$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Databases$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Databases$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Databases$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Databases$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all the Databases for the given project, location and DbSystem. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.databases.list({ + * // Optional. An expression for filtering the results of the request. list for container databases is supported only with a valid dbSystem (full resource name) filter in this format: `dbSystem="projects/{project\}/locations/{location\}/dbSystems/{dbSystemId\}"` + * filter: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 Databases will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. + * pageToken: 'placeholder-value', + * // Required. The parent resource name in the following format: projects/{project\}/locations/{region\} + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "databases": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Databases$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Databases$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Databases$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Databases$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Databases$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Databases$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Databases$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Databases$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/databases').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Databases$Get extends StandardParameters { + /** + * Required. The name of the Database resource in the following format: projects/{project\}/locations/{region\}/databases/{database\} + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Databases$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. list for container databases is supported only with a valid dbSystem (full resource name) filter in this format: `dbSystem="projects/{project\}/locations/{location\}/dbSystems/{dbSystemId\}"` + */ + filter?: string; + /** + * Optional. The maximum number of items to return. If unspecified, a maximum of 50 Databases will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. + */ + pageToken?: string; + /** + * Required. The parent resource name in the following format: projects/{project\}/locations/{region\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Dbsysteminitialstoragesizes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists all the DbSystemInitialStorageSizes for the given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await oracledatabase.projects.locations.dbSystemInitialStorageSizes.list({ + * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 DbSystemInitialStorageSizes will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. + * pageToken: 'placeholder-value', + * // Required. The parent value for the DbSystemInitialStorageSize resource with the format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "dbSystemInitialStorageSizes": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+parent}/dbSystemInitialStorageSizes' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Dbsysteminitialstoragesizes$List extends StandardParameters { + /** + * Optional. The maximum number of items to return. If unspecified, a maximum of 50 DbSystemInitialStorageSizes will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. + */ + pageToken?: string; + /** + * Required. The parent value for the DbSystemInitialStorageSize resource with the format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Dbsystems { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new DbSystem in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.dbSystems.create({ + * // Required. The ID of the DbSystem to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * dbSystemId: 'placeholder-value', + * // Required. The value for parent of the DbSystem in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "ociUrl": "my_ociUrl", + * // "odbNetwork": "my_odbNetwork", + * // "odbSubnet": "my_odbSubnet", + * // "properties": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Dbsystems$Create, + options: StreamMethodOptions + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Dbsystems$Create, + options?: MethodOptions + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Dbsystems$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Dbsystems$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Dbsystems$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Dbsystems$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Dbsystems$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Dbsystems$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/dbSystems').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single DbSystem. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.dbSystems.delete({ + * // Required. The name of the DbSystem in the following format: projects/{project\}/locations/{location\}/dbSystems/{db_system\}. + * name: 'projects/my-project/locations/my-location/dbSystems/my-dbSystem', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Dbsystems$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Dbsystems$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Dbsystems$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Dbsystems$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Dbsystems$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Dbsystems$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Dbsystems$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Dbsystems$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single DbSystem. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.dbSystems.get({ + * // Required. The name of the DbSystem in the following format: projects/{project\}/locations/{location\}/dbSystems/{db_system\}. + * name: 'projects/my-project/locations/my-location/dbSystems/my-dbSystem', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "ociUrl": "my_ociUrl", + * // "odbNetwork": "my_odbNetwork", + * // "odbSubnet": "my_odbSubnet", + * // "properties": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Dbsystems$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Dbsystems$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Dbsystems$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Dbsystems$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Dbsystems$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Dbsystems$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Dbsystems$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Dbsystems$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists all the DbSystems for the given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.dbSystems.list({ + * // Optional. An expression for filtering the results of the request. + * filter: 'placeholder-value', + * // Optional. An expression for ordering the results of the request. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 DbSystems will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent value for DbSystems in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "dbSystems": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Dbsystems$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Dbsystems$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Dbsystems$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Dbsystems$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Dbsystems$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Dbsystems$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Dbsystems$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Dbsystems$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/dbSystems').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the `labels` of a single DbSystem. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.dbSystems.patch({ + * // Identifier. The name of the DbSystem resource in the following format: projects/{project\}/locations/{region\}/dbSystems/{db_system\} + * name: 'projects/my-project/locations/my-location/dbSystems/my-dbSystem', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * // Optional. A mask specifying which fields in the DbSystem should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "ociUrl": "my_ociUrl", + * // "odbNetwork": "my_odbNetwork", + * // "odbSubnet": "my_odbSubnet", + * // "properties": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Dbsystems$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Dbsystems$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Dbsystems$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Dbsystems$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Dbsystems$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Dbsystems$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Dbsystems$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Dbsystems$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Dbsystems$Create extends StandardParameters { + /** + * Required. The ID of the DbSystem to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + */ + dbSystemId?: string; + /** + * Required. The value for parent of the DbSystem in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DbSystem; + } + export interface Params$Resource$Projects$Locations$Dbsystems$Delete extends StandardParameters { + /** + * Required. The name of the DbSystem in the following format: projects/{project\}/locations/{location\}/dbSystems/{db_system\}. + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Dbsystems$Get extends StandardParameters { + /** + * Required. The name of the DbSystem in the following format: projects/{project\}/locations/{location\}/dbSystems/{db_system\}. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Dbsystems$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. + */ + filter?: string; + /** + * Optional. An expression for ordering the results of the request. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If unspecified, at most 50 DbSystems will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent value for DbSystems in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Dbsystems$Patch extends StandardParameters { + /** + * Identifier. The name of the DbSystem resource in the following format: projects/{project\}/locations/{region\}/dbSystems/{db_system\} + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + /** + * Optional. A mask specifying which fields in the DbSystem should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DbSystem; + } + + export class Resource$Projects$Locations$Dbsystemshapes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists the database system shapes available for the project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.dbSystemShapes.list({ + * // Optional. An expression for filtering the results of the request. The `gcp_oracle_zone_id`, `shape_family`, and `database_edition` fields are supported in the following format: `gcp_oracle_zone_id="{gcp_oracle_zone_id\}" AND shape_family="{shape_family\}" AND database_edition="{database_edition\}"`. + * filter: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 database system shapes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent value for Database System Shapes in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "dbSystemShapes": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Dbsystemshapes$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Dbsystemshapes$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Dbsystemshapes$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Dbsystemshapes$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Dbsystemshapes$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Dbsystemshapes$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Dbsystemshapes$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Dbsystemshapes$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/dbSystemShapes').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Dbsystemshapes$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. The `gcp_oracle_zone_id`, `shape_family`, and `database_edition` fields are supported in the following format: `gcp_oracle_zone_id="{gcp_oracle_zone_id\}" AND shape_family="{shape_family\}" AND database_edition="{database_edition\}"`. + */ + filter?: string; + /** + * Optional. The maximum number of items to return. If unspecified, at most 50 database system shapes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent value for Database System Shapes in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + + export class Resource$Projects$Locations$Dbversions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * List DbVersions for the given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.dbVersions.list({ + * // Optional. Filter expression that matches a subset of the DbVersions to show. The supported filter for dbSystem creation is `db_system_shape = {db_system_shape\} AND storage_management = {storage_management\}`. If no filter is provided, all DbVersions will be returned. + * filter: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 DbVersions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. + * pageToken: 'placeholder-value', + * // Required. The parent value for the DbVersion resource with the format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "dbVersions": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Dbversions$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Dbversions$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Dbversions$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Dbversions$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Dbversions$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Dbversions$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Dbversions$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Dbversions$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/dbVersions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Dbversions$List extends StandardParameters { + /** + * Optional. Filter expression that matches a subset of the DbVersions to show. The supported filter for dbSystem creation is `db_system_shape = {db_system_shape\} AND storage_management = {storage_management\}`. If no filter is provided, all DbVersions will be returned. + */ + filter?: string; + /** + * Optional. The maximum number of items to return. If unspecified, a maximum of 50 DbVersions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. + */ + pageToken?: string; + /** + * Required. The parent value for the DbVersion resource with the format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Entitlements { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists the entitlements in a given project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.entitlements.list({ + * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 entitlements will be returned. The maximum value is 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent value for the entitlement in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "entitlements": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Entitlements$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Entitlements$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Entitlements$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Entitlements$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Entitlements$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Entitlements$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Entitlements$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Entitlements$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/entitlements').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Entitlements$List extends StandardParameters { + /** + * Optional. The maximum number of items to return. If unspecified, a maximum of 50 entitlements will be returned. The maximum value is 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent value for the entitlement in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + + export class Resource$Projects$Locations$Exadbvmclusters { + context: APIRequestContext; + dbNodes: Resource$Projects$Locations$Exadbvmclusters$Dbnodes; + constructor(context: APIRequestContext) { + this.context = context; + this.dbNodes = new Resource$Projects$Locations$Exadbvmclusters$Dbnodes( + this.context + ); + } + + /** + * Creates a new Exadb (Exascale) VM Cluster resource. * @example * ```js * // Before running the sample: @@ -12278,25 +14497,26 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.dbSystems.patch({ - * // Identifier. The name of the DbSystem resource in the following format: projects/{project\}/locations/{region\}/dbSystems/{db_system\} - * name: 'projects/my-project/locations/my-location/dbSystems/my-dbSystem', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * const res = await oracledatabase.projects.locations.exadbVmClusters.create({ + * // Required. The ID of the ExadbVmCluster to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * exadbVmClusterId: 'placeholder-value', + * // Required. The value for parent of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). * requestId: 'placeholder-value', - * // Optional. A mask specifying which fields in the DbSystem should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "backupOdbSubnet": "my_backupOdbSubnet", * // "createTime": "my_createTime", * // "displayName": "my_displayName", * // "entitlementId": "my_entitlementId", * // "gcpOracleZone": "my_gcpOracleZone", + * // "identityConnector": {}, * // "labels": {}, * // "name": "my_name", - * // "ociUrl": "my_ociUrl", * // "odbNetwork": "my_odbNetwork", * // "odbSubnet": "my_odbSubnet", * // "properties": {} @@ -12327,32 +14547,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Dbsystems$Patch, + create( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Create, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Dbsystems$Patch, + create( + params?: Params$Resource$Projects$Locations$Exadbvmclusters$Create, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Dbsystems$Patch, + create( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Dbsystems$Patch, + create( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Create, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Dbsystems$Patch, + create( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Create, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dbsystems$Patch + | Params$Resource$Projects$Locations$Exadbvmclusters$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -12367,12 +14587,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dbsystems$Patch; + {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Dbsystems$Patch; + params = + {} as Params$Resource$Projects$Locations$Exadbvmclusters$Create; options = {}; } @@ -12386,15 +14607,18 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1/{+parent}/exadbVmClusters').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { @@ -12406,93 +14630,9 @@ export namespace oracledatabase_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Dbsystems$Create extends StandardParameters { - /** - * Required. The ID of the DbSystem to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - */ - dbSystemId?: string; - /** - * Required. The value for parent of the DbSystem in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$DbSystem; - } - export interface Params$Resource$Projects$Locations$Dbsystems$Delete extends StandardParameters { - /** - * Required. The name of the DbSystem in the following format: projects/{project\}/locations/{location\}/dbSystems/{db_system\}. - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Dbsystems$Get extends StandardParameters { - /** - * Required. The name of the DbSystem in the following format: projects/{project\}/locations/{location\}/dbSystems/{db_system\}. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Dbsystems$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. - */ - filter?: string; - /** - * Optional. An expression for ordering the results of the request. - */ - orderBy?: string; - /** - * Optional. The maximum number of items to return. If unspecified, at most 50 DbSystems will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. The parent value for DbSystems in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Dbsystems$Patch extends StandardParameters { - /** - * Identifier. The name of the DbSystem resource in the following format: projects/{project\}/locations/{region\}/dbSystems/{db_system\} - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - /** - * Optional. A mask specifying which fields in the DbSystem should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$DbSystem; - } - - export class Resource$Projects$Locations$Dbsystemshapes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists the database system shapes available for the project and location. + * Deletes a single Exadb (Exascale) VM Cluster. * @example * ```js * // Before running the sample: @@ -12521,22 +14661,21 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.dbSystemShapes.list({ - * // Optional. An expression for filtering the results of the request. The `gcp_oracle_zone_id`, `shape_family`, and `database_edition` fields are supported in the following format: `gcp_oracle_zone_id="{gcp_oracle_zone_id\}" AND shape_family="{shape_family\}" AND database_edition="{database_edition\}"`. - * filter: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, at most 50 database system shapes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. The parent value for Database System Shapes in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', + * const res = await oracledatabase.projects.locations.exadbVmClusters.delete({ + * // Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. + * name: 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "dbSystemShapes": [], - * // "nextPageToken": "my_nextPageToken" + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -12552,56 +14691,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Dbsystemshapes$List, + delete( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Dbsystemshapes$List, + delete( + params?: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Dbsystemshapes$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Dbsystemshapes$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Dbsystemshapes$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dbsystemshapes$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Exadbvmclusters$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dbsystemshapes$List; + {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Dbsystemshapes$List; + params = + {} as Params$Resource$Projects$Locations$Exadbvmclusters$Delete; options = {}; } @@ -12615,58 +14751,29 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/dbSystemShapes').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Dbsystemshapes$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. The `gcp_oracle_zone_id`, `shape_family`, and `database_edition` fields are supported in the following format: `gcp_oracle_zone_id="{gcp_oracle_zone_id\}" AND shape_family="{shape_family\}" AND database_edition="{database_edition\}"`. - */ - filter?: string; - /** - * Optional. The maximum number of items to return. If unspecified, at most 50 database system shapes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. The parent value for Database System Shapes in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - } - - export class Resource$Projects$Locations$Dbversions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * List DbVersions for the given project and location. + * Gets details of a single Exadb (Exascale) VM Cluster. * @example * ```js * // Before running the sample: @@ -12695,22 +14802,25 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.dbVersions.list({ - * // Optional. Filter expression that matches a subset of the DbVersions to show. The supported filter for dbSystem creation is `db_system_shape = {db_system_shape\} AND storage_management = {storage_management\}`. If no filter is provided, all DbVersions will be returned. - * filter: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 DbVersions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. - * pageToken: 'placeholder-value', - * // Required. The parent value for the DbVersion resource with the format: projects/{project\}/locations/{location\} - * parent: 'projects/my-project/locations/my-location', + * const res = await oracledatabase.projects.locations.exadbVmClusters.get({ + * // Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. + * name: 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', * }); * console.log(res.data); * * // Example response * // { - * // "dbVersions": [], - * // "nextPageToken": "my_nextPageToken" + * // "backupOdbSubnet": "my_backupOdbSubnet", + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "identityConnector": {}, + * // "labels": {}, + * // "name": "my_name", + * // "odbNetwork": "my_odbNetwork", + * // "odbSubnet": "my_odbSubnet", + * // "properties": {} * // } * } * @@ -12726,54 +14836,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Dbversions$List, + get( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Dbversions$List, + get( + params?: Params$Resource$Projects$Locations$Exadbvmclusters$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Dbversions$List, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Dbversions$List, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Dbversions$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dbversions$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Exadbvmclusters$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dbversions$List; + {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Dbversions$List; + params = {} as Params$Resource$Projects$Locations$Exadbvmclusters$Get; options = {}; } @@ -12787,58 +14896,29 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/dbVersions').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Dbversions$List extends StandardParameters { - /** - * Optional. Filter expression that matches a subset of the DbVersions to show. The supported filter for dbSystem creation is `db_system_shape = {db_system_shape\} AND storage_management = {storage_management\}`. If no filter is provided, all DbVersions will be returned. - */ - filter?: string; - /** - * Optional. The maximum number of items to return. If unspecified, a maximum of 50 DbVersions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. - */ - pageToken?: string; - /** - * Required. The parent value for the DbVersion resource with the format: projects/{project\}/locations/{location\} - */ - parent?: string; - } - - export class Resource$Projects$Locations$Entitlements { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists the entitlements in a given project. + * Lists all the Exadb (Exascale) VM Clusters for the given project and location. * @example * ```js * // Before running the sample: @@ -12867,20 +14947,25 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.entitlements.list({ - * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 entitlements will be returned. The maximum value is 1000. + * const res = await oracledatabase.projects.locations.exadbVmClusters.list({ + * // Optional. An expression for filtering the results of the request. + * filter: 'placeholder-value', + * // Optional. An expression for ordering the results of the request. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 ExadbVmClusters will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', * // Optional. A token identifying a page of results the server should return. * pageToken: 'placeholder-value', - * // Required. The parent value for the entitlement in the following format: projects/{project\}/locations/{location\}. + * // Required. The parent value for ExadbVmClusters in the following format: projects/{project\}/locations/{location\}. * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "entitlements": [], - * // "nextPageToken": "my_nextPageToken" + * // "exadbVmClusters": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -12897,53 +14982,56 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Entitlements$List, + params: Params$Resource$Projects$Locations$Exadbvmclusters$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Entitlements$List, + params?: Params$Resource$Projects$Locations$Exadbvmclusters$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Projects$Locations$Entitlements$List, + params: Params$Resource$Projects$Locations$Exadbvmclusters$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Entitlements$List, + params: Params$Resource$Projects$Locations$Exadbvmclusters$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Entitlements$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Exadbvmclusters$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Entitlements$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Exadbvmclusters$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Entitlements$List; + {}) as Params$Resource$Projects$Locations$Exadbvmclusters$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Entitlements$List; + params = {} as Params$Resource$Projects$Locations$Exadbvmclusters$List; options = {}; } @@ -12957,7 +15045,7 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/entitlements').replace( + url: (rootUrl + '/v1/{+parent}/exadbVmClusters').replace( /([^:]\/)\/+/g, '$1' ), @@ -12972,43 +15060,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Entitlements$List extends StandardParameters { - /** - * Optional. The maximum number of items to return. If unspecified, a maximum of 50 entitlements will be returned. The maximum value is 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. The parent value for the entitlement in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - } - - export class Resource$Projects$Locations$Exadbvmclusters { - context: APIRequestContext; - dbNodes: Resource$Projects$Locations$Exadbvmclusters$Dbnodes; - constructor(context: APIRequestContext) { - this.context = context; - this.dbNodes = new Resource$Projects$Locations$Exadbvmclusters$Dbnodes( - this.context - ); - } /** - * Creates a new Exadb (Exascale) VM Cluster resource. + * Updates a single Exadb (Exascale) VM Cluster. To add virtual machines to existing exadb vm cluster, only pass the node count. * @example * ```js * // Before running the sample: @@ -13037,13 +15099,13 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.exadbVmClusters.create({ - * // Required. The ID of the ExadbVmCluster to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - * exadbVmClusterId: 'placeholder-value', - * // Required. The value for parent of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * const res = await oracledatabase.projects.locations.exadbVmClusters.patch({ + * // Identifier. The name of the ExadbVmCluster resource in the following format: projects/{project\}/locations/{region\}/exadbVmClusters/{exadb_vm_cluster\} + * name: 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). * requestId: 'placeholder-value', + * // Optional. A mask specifying which fields in th VM Cluster should be updated. A field specified in the mask is overwritten. If a mask isn't provided then the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -13087,32 +15149,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Create, + patch( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Exadbvmclusters$Create, + patch( + params?: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Create, + patch( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Create, + patch( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Create, + patch( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exadbvmclusters$Create + | Params$Resource$Projects$Locations$Exadbvmclusters$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -13127,13 +15189,12 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Create; + {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Exadbvmclusters$Create; + params = {} as Params$Resource$Projects$Locations$Exadbvmclusters$Patch; options = {}; } @@ -13147,18 +15208,15 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/exadbVmClusters').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -13172,7 +15230,7 @@ export namespace oracledatabase_v1 { } /** - * Deletes a single Exadb (Exascale) VM Cluster. + * Removes virtual machines from an existing exadb vm cluster. * @example * ```js * // Before running the sample: @@ -13201,12 +15259,22 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.exadbVmClusters.delete({ - * // Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. - * name: 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', - * }); + * const res = + * await oracledatabase.projects.locations.exadbVmClusters.removeVirtualMachine( + * { + * // Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. + * name: 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "hostnames": [], + * // "requestId": "my_requestId" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response @@ -13231,32 +15299,34 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, + removeVirtualMachine( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, + removeVirtualMachine( + params?: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, + removeVirtualMachine( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, + removeVirtualMachine( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Delete, + removeVirtualMachine( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + removeVirtualMachine( + callback: BodyResponseCallback + ): void; + removeVirtualMachine( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exadbvmclusters$Delete + | Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -13271,13 +15341,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Delete; + {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Exadbvmclusters$Delete; + {} as Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine; options = {}; } @@ -13291,8 +15361,11 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:removeVirtualMachine').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options @@ -13311,9 +15384,104 @@ export namespace oracledatabase_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Exadbvmclusters$Create extends StandardParameters { /** - * Gets details of a single Exadb (Exascale) VM Cluster. + * Required. The ID of the ExadbVmCluster to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + */ + exadbVmClusterId?: string; + /** + * Required. The value for parent of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExadbVmCluster; + } + export interface Params$Resource$Projects$Locations$Exadbvmclusters$Delete extends StandardParameters { + /** + * Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Exadbvmclusters$Get extends StandardParameters { + /** + * Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Exadbvmclusters$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. + */ + filter?: string; + /** + * Optional. An expression for ordering the results of the request. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If unspecified, at most 50 ExadbVmClusters will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent value for ExadbVmClusters in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Exadbvmclusters$Patch extends StandardParameters { + /** + * Identifier. The name of the ExadbVmCluster resource in the following format: projects/{project\}/locations/{region\}/exadbVmClusters/{exadb_vm_cluster\} + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + /** + * Optional. A mask specifying which fields in th VM Cluster should be updated. A field specified in the mask is overwritten. If a mask isn't provided then the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExadbVmCluster; + } + export interface Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine extends StandardParameters { + /** + * Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RemoveVirtualMachineExadbVmClusterRequest; + } + + export class Resource$Projects$Locations$Exadbvmclusters$Dbnodes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists the database nodes of a VM Cluster. * @example * ```js * // Before running the sample: @@ -13342,25 +15510,22 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.exadbVmClusters.get({ - * // Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. - * name: 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', - * }); + * const res = + * await oracledatabase.projects.locations.exadbVmClusters.dbNodes.list({ + * // Optional. The maximum number of items to return. If unspecified, at most 50 db nodes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the node should return. + * pageToken: 'placeholder-value', + * // Required. The parent value for database node in the following format: projects/{project\}/locations/{location\}/cloudVmClusters/{cloudVmCluster\}. . + * parent: + * 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', + * }); * console.log(res.data); * * // Example response * // { - * // "backupOdbSubnet": "my_backupOdbSubnet", - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "identityConnector": {}, - * // "labels": {}, - * // "name": "my_name", - * // "odbNetwork": "my_odbNetwork", - * // "odbSubnet": "my_odbSubnet", - * // "properties": {} + * // "dbNodes": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -13376,53 +15541,54 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Get, + list( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Exadbvmclusters$Get, + list( + params?: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Get, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exadbvmclusters$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Get; + {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Exadbvmclusters$Get; + params = + {} as Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List; options = {}; } @@ -13436,29 +15602,54 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/dbNodes').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List extends StandardParameters { /** - * Lists all the Exadb (Exascale) VM Clusters for the given project and location. + * Optional. The maximum number of items to return. If unspecified, at most 50 db nodes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the node should return. + */ + pageToken?: string; + /** + * Required. The parent value for database node in the following format: projects/{project\}/locations/{location\}/cloudVmClusters/{cloudVmCluster\}. . + */ + parent?: string; + } + + export class Resource$Projects$Locations$Exascaledbstoragevaults { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new ExascaleDB Storage Vault resource. * @example * ```js * // Before running the sample: @@ -13487,25 +15678,39 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.exadbVmClusters.list({ - * // Optional. An expression for filtering the results of the request. - * filter: 'placeholder-value', - * // Optional. An expression for ordering the results of the request. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, at most 50 ExadbVmClusters will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. The parent value for ExadbVmClusters in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await oracledatabase.projects.locations.exascaleDbStorageVaults.create({ + * // Required. The ID of the ExascaleDbStorageVault to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * exascaleDbStorageVaultId: 'placeholder-value', + * // Required. The value for parent of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "exadataInfrastructure": "my_exadataInfrastructure", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "properties": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "exadbVmClusters": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -13521,57 +15726,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Exadbvmclusters$List, + create( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Exadbvmclusters$List, + create( + params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Exadbvmclusters$List, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Exadbvmclusters$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Exadbvmclusters$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, + callback: BodyResponseCallback ): void; - list( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exadbvmclusters$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exadbvmclusters$List; + {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Exadbvmclusters$List; + params = + {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create; options = {}; } @@ -13585,11 +15786,11 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/exadbVmClusters').replace( + url: (rootUrl + '/v1/{+parent}/exascaleDbStorageVaults').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -13600,17 +15801,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a single Exadb (Exascale) VM Cluster. To add virtual machines to existing exadb vm cluster, only pass the node count. + * Deletes a single ExascaleDB Storage Vault. * @example * ```js * // Before running the sample: @@ -13639,32 +15840,13 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.exadbVmClusters.patch({ - * // Identifier. The name of the ExadbVmCluster resource in the following format: projects/{project\}/locations/{region\}/exadbVmClusters/{exadb_vm_cluster\} - * name: 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', - * // Optional. A mask specifying which fields in th VM Cluster should be updated. A field specified in the mask is overwritten. If a mask isn't provided then the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "backupOdbSubnet": "my_backupOdbSubnet", - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "identityConnector": {}, - * // "labels": {}, - * // "name": "my_name", - * // "odbNetwork": "my_odbNetwork", - * // "odbSubnet": "my_odbSubnet", - * // "properties": {} - * // } - * }, - * }); + * const res = + * await oracledatabase.projects.locations.exascaleDbStorageVaults.delete({ + * // Required. The name of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\}. + * name: 'projects/my-project/locations/my-location/exascaleDbStorageVaults/my-exascaleDbStorageVault', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -13689,32 +15871,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, + delete( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, + delete( + params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, + delete( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Patch, + delete( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exadbvmclusters$Patch + | Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -13729,12 +15911,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Patch; + {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Exadbvmclusters$Patch; + params = + {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete; options = {}; } @@ -13749,7 +15932,7 @@ export namespace oracledatabase_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -13770,7 +15953,7 @@ export namespace oracledatabase_v1 { } /** - * Removes virtual machines from an existing exadb vm cluster. + * Gets details of a single ExascaleDB Storage Vault. * @example * ```js * // Before running the sample: @@ -13800,30 +15983,22 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.exadbVmClusters.removeVirtualMachine( - * { - * // Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. - * name: 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "hostnames": [], - * // "requestId": "my_requestId" - * // } - * }, - * }, - * ); + * await oracledatabase.projects.locations.exascaleDbStorageVaults.get({ + * // Required. The name of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\}. + * name: 'projects/my-project/locations/my-location/exascaleDbStorageVaults/my-exascaleDbStorageVault', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "exadataInfrastructure": "my_exadataInfrastructure", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, * // "name": "my_name", - * // "response": {} + * // "properties": {} * // } * } * @@ -13839,55 +16014,55 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeVirtualMachine( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, + get( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, options: StreamMethodOptions ): Promise>; - removeVirtualMachine( - params?: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, + get( + params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, options?: MethodOptions - ): Promise>; - removeVirtualMachine( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeVirtualMachine( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - removeVirtualMachine( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeVirtualMachine( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, + callback: BodyResponseCallback ): void; - removeVirtualMachine( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine - | BodyResponseCallback + | Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine; + {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine; + {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get; options = {}; } @@ -13901,11 +16076,8 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:removeVirtualMachine').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options @@ -13916,112 +16088,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Exadbvmclusters$Create extends StandardParameters { - /** - * Required. The ID of the ExadbVmCluster to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - */ - exadbVmClusterId?: string; - /** - * Required. The value for parent of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ExadbVmCluster; - } - export interface Params$Resource$Projects$Locations$Exadbvmclusters$Delete extends StandardParameters { - /** - * Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Exadbvmclusters$Get extends StandardParameters { - /** - * Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Exadbvmclusters$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. - */ - filter?: string; - /** - * Optional. An expression for ordering the results of the request. - */ - orderBy?: string; - /** - * Optional. The maximum number of items to return. If unspecified, at most 50 ExadbVmClusters will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. The parent value for ExadbVmClusters in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Exadbvmclusters$Patch extends StandardParameters { - /** - * Identifier. The name of the ExadbVmCluster resource in the following format: projects/{project\}/locations/{region\}/exadbVmClusters/{exadb_vm_cluster\} - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - /** - * Optional. A mask specifying which fields in th VM Cluster should be updated. A field specified in the mask is overwritten. If a mask isn't provided then the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ExadbVmCluster; - } - export interface Params$Resource$Projects$Locations$Exadbvmclusters$Removevirtualmachine extends StandardParameters { - /** - * Required. The name of the ExadbVmCluster in the following format: projects/{project\}/locations/{location\}/exadbVmClusters/{exadb_vm_cluster\}. - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RemoveVirtualMachineExadbVmClusterRequest; - } - - export class Resource$Projects$Locations$Exadbvmclusters$Dbnodes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists the database nodes of a VM Cluster. + * Lists all the ExascaleDB Storage Vaults for the given project and location. * @example * ```js * // Before running the sample: @@ -14051,21 +16128,25 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.exadbVmClusters.dbNodes.list({ - * // Optional. The maximum number of items to return. If unspecified, at most 50 db nodes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * await oracledatabase.projects.locations.exascaleDbStorageVaults.list({ + * // Optional. An expression for filtering the results of the request. Filter the list as specified in https://google.aip.dev/160. + * filter: 'placeholder-value', + * // Optional. An expression for ordering the results of the request. Order results as specified in https://google.aip.dev/132. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 ExascaleDbStorageVaults will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the node should return. + * // Optional. A token identifying a page of results the server should return. * pageToken: 'placeholder-value', - * // Required. The parent value for database node in the following format: projects/{project\}/locations/{location\}/cloudVmClusters/{cloudVmCluster\}. . - * parent: - * 'projects/my-project/locations/my-location/exadbVmClusters/my-exadbVmCluster', + * // Required. The parent value for ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "dbNodes": [], - * // "nextPageToken": "my_nextPageToken" + * // "exascaleDbStorageVaults": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -14082,53 +16163,61 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, + params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; list( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List, - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Exascaledbstoragevaults$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List; + {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List; + {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$List; options = {}; } @@ -14142,7 +16231,7 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/dbNodes').replace( + url: (rootUrl + '/v1/{+parent}/exascaleDbStorageVaults').replace( /([^:]\/)\/+/g, '$1' ), @@ -14157,39 +16246,19 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Projects$Locations$Exadbvmclusters$Dbnodes$List extends StandardParameters { - /** - * Optional. The maximum number of items to return. If unspecified, at most 50 db nodes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the node should return. - */ - pageToken?: string; - /** - * Required. The parent value for database node in the following format: projects/{project\}/locations/{location\}/cloudVmClusters/{cloudVmCluster\}. . - */ - parent?: string; - } - - export class Resource$Projects$Locations$Exascaledbstoragevaults { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new ExascaleDB Storage Vault resource. + * Updates the `labels` of a single ExascaleDbStorageVault. * @example * ```js * // Before running the sample: @@ -14219,13 +16288,13 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.exascaleDbStorageVaults.create({ - * // Required. The ID of the ExascaleDbStorageVault to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - * exascaleDbStorageVaultId: 'placeholder-value', - * // Required. The value for parent of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * await oracledatabase.projects.locations.exascaleDbStorageVaults.patch({ + * // Identifier. The resource name of the ExascaleDbStorageVault. Format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\} + * name: 'projects/my-project/locations/my-location/exascaleDbStorageVaults/my-exascaleDbStorageVault', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). * requestId: 'placeholder-value', + * // Optional. A mask specifying which fields in the ExascaleDbStorageVault should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -14266,32 +16335,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, + patch( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, + patch( + params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, + patch( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, + patch( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create, + patch( + params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create + | Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -14306,13 +16375,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create; + {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create; + {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch; options = {}; } @@ -14326,18 +16395,15 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/exascaleDbStorageVaults').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -14349,9 +16415,96 @@ export namespace oracledatabase_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create extends StandardParameters { /** - * Deletes a single ExascaleDB Storage Vault. + * Required. The ID of the ExascaleDbStorageVault to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + */ + exascaleDbStorageVaultId?: string; + /** + * Required. The value for parent of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExascaleDbStorageVault; + } + export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete extends StandardParameters { + /** + * Required. The name of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\}. + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get extends StandardParameters { + /** + * Required. The name of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\}. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. Filter the list as specified in https://google.aip.dev/160. + */ + filter?: string; + /** + * Optional. An expression for ordering the results of the request. Order results as specified in https://google.aip.dev/132. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If unspecified, at most 50 ExascaleDbStorageVaults will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent value for ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch extends StandardParameters { + /** + * Identifier. The resource name of the ExascaleDbStorageVault. Format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\} + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + /** + * Optional. A mask specifying which fields in the ExascaleDbStorageVault should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ExascaleDbStorageVault; + } + + export class Resource$Projects$Locations$Giversions { + context: APIRequestContext; + minorVersions: Resource$Projects$Locations$Giversions$Minorversions; + constructor(context: APIRequestContext) { + this.context = context; + this.minorVersions = + new Resource$Projects$Locations$Giversions$Minorversions(this.context); + } + + /** + * Lists all the valid Oracle Grid Infrastructure (GI) versions for the given project and location. * @example * ```js * // Before running the sample: @@ -14380,22 +16533,22 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await oracledatabase.projects.locations.exascaleDbStorageVaults.delete({ - * // Required. The name of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\}. - * name: 'projects/my-project/locations/my-location/exascaleDbStorageVaults/my-exascaleDbStorageVault', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', - * }); + * const res = await oracledatabase.projects.locations.giVersions.list({ + * // Optional. An expression for filtering the results of the request. Only the `shape` and `gcp_oracle_zone_id` fields are supported in the following format: `shape="{shape\}" AND gcp_oracle_zone_id="{gcp_oracle_zone_id\}"`. + * filter: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 Oracle Grid Infrastructure (GI) versions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent value for Grid Infrastructure Version in the following format: Format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "giVersions": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -14411,53 +16564,54 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, + list( + params: Params$Resource$Projects$Locations$Giversions$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, + list( + params?: Params$Resource$Projects$Locations$Giversions$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Giversions$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Giversions$List, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Giversions$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Giversions$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete; + {}) as Params$Resource$Projects$Locations$Giversions$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete; + params = {} as Params$Resource$Projects$Locations$Giversions$List; options = {}; } @@ -14471,29 +16625,58 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+parent}/giVersions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Giversions$List extends StandardParameters { /** - * Gets details of a single ExascaleDB Storage Vault. + * Optional. An expression for filtering the results of the request. Only the `shape` and `gcp_oracle_zone_id` fields are supported in the following format: `shape="{shape\}" AND gcp_oracle_zone_id="{gcp_oracle_zone_id\}"`. + */ + filter?: string; + /** + * Optional. The maximum number of items to return. If unspecified, a maximum of 50 Oracle Grid Infrastructure (GI) versions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent value for Grid Infrastructure Version in the following format: Format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + + export class Resource$Projects$Locations$Giversions$Minorversions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists all the valid minor versions for the given project, location, gi version and shape family. * @example * ```js * // Before running the sample: @@ -14523,22 +16706,23 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.exascaleDbStorageVaults.get({ - * // Required. The name of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\}. - * name: 'projects/my-project/locations/my-location/exascaleDbStorageVaults/my-exascaleDbStorageVault', + * await oracledatabase.projects.locations.giVersions.minorVersions.list({ + * // Optional. An expression for filtering the results of the request. Only the `shape_family` and `gcp_oracle_zone_id` fields are supported in the following format: `shape_family="{shape_family\}" AND gcp_oracle_zone_id="{gcp_oracle_zone_id\}"`. + * filter: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 System Versions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. + * pageToken: 'placeholder-value', + * // Required. The parent value for the MinorVersion resource with the format: projects/{project\}/locations/{location\}/giVersions/{gi_version\} + * parent: + * 'projects/my-project/locations/my-location/giVersions/my-giVersion', * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "exadataInfrastructure": "my_exadataInfrastructure", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, - * // "name": "my_name", - * // "properties": {} + * // "minorVersions": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -14554,55 +16738,57 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, + list( + params: Params$Resource$Projects$Locations$Giversions$Minorversions$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, + list( + params?: Params$Resource$Projects$Locations$Giversions$Minorversions$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Giversions$Minorversions$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, + list( + params: Params$Resource$Projects$Locations$Giversions$Minorversions$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Giversions$Minorversions$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Giversions$Minorversions$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get; + {}) as Params$Resource$Projects$Locations$Giversions$Minorversions$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get; + {} as Params$Resource$Projects$Locations$Giversions$Minorversions$List; options = {}; } @@ -14616,29 +16802,58 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/minorVersions').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Giversions$Minorversions$List extends StandardParameters { /** - * Lists all the ExascaleDB Storage Vaults for the given project and location. + * Optional. An expression for filtering the results of the request. Only the `shape_family` and `gcp_oracle_zone_id` fields are supported in the following format: `shape_family="{shape_family\}" AND gcp_oracle_zone_id="{gcp_oracle_zone_id\}"`. + */ + filter?: string; + /** + * Optional. The maximum number of items to return. If unspecified, a maximum of 50 System Versions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. + */ + pageToken?: string; + /** + * Required. The parent value for the MinorVersion resource with the format: projects/{project\}/locations/{location\}/giVersions/{gi_version\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Goldengateconnectionassignments { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new GoldengateConnectionAssignment in a given project and location. * @example * ```js * // Before running the sample: @@ -14668,25 +16883,38 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.exascaleDbStorageVaults.list({ - * // Optional. An expression for filtering the results of the request. Filter the list as specified in https://google.aip.dev/160. - * filter: 'placeholder-value', - * // Optional. An expression for ordering the results of the request. Order results as specified in https://google.aip.dev/132. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, at most 50 ExascaleDbStorageVaults will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. The parent value for ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * }); + * await oracledatabase.projects.locations.goldengateConnectionAssignments.create( + * { + * // Required. The ID of the GoldengateConnectionAssignment to create. + * goldengateConnectionAssignmentId: 'placeholder-value', + * // Required. The parent resource where this GoldengateConnectionAssignment will be created. Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "labels": {}, + * // "name": "my_name", + * // "properties": {} + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "exascaleDbStorageVaults": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -14702,62 +16930,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, + create( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, + create( + params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, + callback: BodyResponseCallback ): void; - list( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exascaledbstoragevaults$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$List; + {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$List; + {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create; options = {}; } @@ -14771,11 +16990,10 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/exascaleDbStorageVaults').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: ( + rootUrl + '/v1/{+parent}/goldengateConnectionAssignments' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -14786,19 +17004,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the `labels` of a single ExascaleDbStorageVault. + * Deletes a single GoldengateConnectionAssignment. * @example * ```js * // Before running the sample: @@ -14828,29 +17044,14 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.exascaleDbStorageVaults.patch({ - * // Identifier. The resource name of the ExascaleDbStorageVault. Format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\} - * name: 'projects/my-project/locations/my-location/exascaleDbStorageVaults/my-exascaleDbStorageVault', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', - * // Optional. A mask specifying which fields in the ExascaleDbStorageVault should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "exadataInfrastructure": "my_exadataInfrastructure", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, - * // "name": "my_name", - * // "properties": {} - * // } + * await oracledatabase.projects.locations.goldengateConnectionAssignments.delete( + * { + * // Required. The name of the GoldengateConnectionAssignment to delete. Format: projects/{project\}/locations/{location\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} + * name: 'projects/my-project/locations/my-location/goldengateConnectionAssignments/my-goldengateConnectionAssignment', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', * }, - * }); + * ); * console.log(res.data); * * // Example response @@ -14875,32 +17076,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, + delete( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, + delete( + params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, + delete( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, + delete( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch, + delete( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch + | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -14915,13 +17116,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch; + {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch; + {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete; options = {}; } @@ -14936,7 +17137,7 @@ export namespace oracledatabase_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -14955,96 +17156,9 @@ export namespace oracledatabase_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$Create extends StandardParameters { - /** - * Required. The ID of the ExascaleDbStorageVault to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - */ - exascaleDbStorageVaultId?: string; - /** - * Required. The value for parent of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ExascaleDbStorageVault; - } - export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$Delete extends StandardParameters { - /** - * Required. The name of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\}. - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$Get extends StandardParameters { - /** - * Required. The name of the ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\}. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. Filter the list as specified in https://google.aip.dev/160. - */ - filter?: string; - /** - * Optional. An expression for ordering the results of the request. Order results as specified in https://google.aip.dev/132. - */ - orderBy?: string; - /** - * Optional. The maximum number of items to return. If unspecified, at most 50 ExascaleDbStorageVaults will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. The parent value for ExascaleDbStorageVault in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Exascaledbstoragevaults$Patch extends StandardParameters { - /** - * Identifier. The resource name of the ExascaleDbStorageVault. Format: projects/{project\}/locations/{location\}/exascaleDbStorageVaults/{exascale_db_storage_vault\} - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - /** - * Optional. A mask specifying which fields in the ExascaleDbStorageVault should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ExascaleDbStorageVault; - } - - export class Resource$Projects$Locations$Giversions { - context: APIRequestContext; - minorVersions: Resource$Projects$Locations$Giversions$Minorversions; - constructor(context: APIRequestContext) { - this.context = context; - this.minorVersions = - new Resource$Projects$Locations$Giversions$Minorversions(this.context); - } /** - * Lists all the valid Oracle Grid Infrastructure (GI) versions for the given project and location. + * Gets details of a single GoldengateConnectionAssignment. * @example * ```js * // Before running the sample: @@ -15073,22 +17187,23 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.giVersions.list({ - * // Optional. An expression for filtering the results of the request. Only the `shape` and `gcp_oracle_zone_id` fields are supported in the following format: `shape="{shape\}" AND gcp_oracle_zone_id="{gcp_oracle_zone_id\}"`. - * filter: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 Oracle Grid Infrastructure (GI) versions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. The parent value for Grid Infrastructure Version in the following format: Format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await oracledatabase.projects.locations.goldengateConnectionAssignments.get( + * { + * // Required. The name of the GoldengateConnectionAssignment to retrieve. Format: projects/{project\}/locations/{location\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} + * name: 'projects/my-project/locations/my-location/goldengateConnectionAssignments/my-goldengateConnectionAssignment', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "giVersions": [], - * // "nextPageToken": "my_nextPageToken" + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "labels": {}, + * // "name": "my_name", + * // "properties": {} * // } * } * @@ -15104,54 +17219,58 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Giversions$List, + get( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Giversions$List, + get( + params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Giversions$List, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Giversions$List, + get( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Giversions$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Giversions$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Giversions$List; + {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Giversions$List; + params = + {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get; options = {}; } @@ -15163,60 +17282,33 @@ export namespace oracledatabase_v1 { const rootUrl = options.rootUrl || 'https://oracledatabase.googleapis.com/'; const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1/{+parent}/giVersions').replace( - /([^:]\/)\/+/g, - '$1' - ), + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Projects$Locations$Giversions$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. Only the `shape` and `gcp_oracle_zone_id` fields are supported in the following format: `shape="{shape\}" AND gcp_oracle_zone_id="{gcp_oracle_zone_id\}"`. - */ - filter?: string; - /** - * Optional. The maximum number of items to return. If unspecified, a maximum of 50 Oracle Grid Infrastructure (GI) versions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. The parent value for Grid Infrastructure Version in the following format: Format: projects/{project\}/locations/{location\}. - */ - parent?: string; - } - - export class Resource$Projects$Locations$Giversions$Minorversions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists all the valid minor versions for the given project, location, gi version and shape family. + * Lists GoldengateConnectionAssignments in a given project and location. * @example * ```js * // Before running the sample: @@ -15246,23 +17338,27 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.giVersions.minorVersions.list({ - * // Optional. An expression for filtering the results of the request. Only the `shape_family` and `gcp_oracle_zone_id` fields are supported in the following format: `shape_family="{shape_family\}" AND gcp_oracle_zone_id="{gcp_oracle_zone_id\}"`. - * filter: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, a maximum of 50 System Versions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. - * pageToken: 'placeholder-value', - * // Required. The parent value for the MinorVersion resource with the format: projects/{project\}/locations/{location\}/giVersions/{gi_version\} - * parent: - * 'projects/my-project/locations/my-location/giVersions/my-giVersion', - * }); + * await oracledatabase.projects.locations.goldengateConnectionAssignments.list( + * { + * // Optional. A filter expression that filters GoldengateConnectionAssignments listed in the response. + * filter: 'placeholder-value', + * // Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "DESC" after a field name for descending. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of GoldengateConnectionAssignments to return. The service may return fewer than this value. If unspecified, at most 50 GoldengateConnectionAssignments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous `ListGoldengateConnectionAssignments` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoldengateConnectionAssignments` must match the call that provided the page token. + * pageToken: 'placeholder-value', + * // Required. The parent value for the GoldengateConnectionAssignments. Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "minorVersions": [], - * // "nextPageToken": "my_nextPageToken" + * // "goldengateConnectionAssignments": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -15279,56 +17375,61 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Giversions$Minorversions$List, + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Giversions$Minorversions$List, + params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; list( - params: Params$Resource$Projects$Locations$Giversions$Minorversions$List, + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Giversions$Minorversions$List, + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Giversions$Minorversions$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Giversions$Minorversions$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnectionassignments$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Giversions$Minorversions$List; + {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Giversions$Minorversions$List; + {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$List; options = {}; } @@ -15342,10 +17443,9 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/minorVersions').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + '/v1/{+parent}/goldengateConnectionAssignments' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, @@ -15357,43 +17457,19 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Projects$Locations$Giversions$Minorversions$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. Only the `shape_family` and `gcp_oracle_zone_id` fields are supported in the following format: `shape_family="{shape_family\}" AND gcp_oracle_zone_id="{gcp_oracle_zone_id\}"`. - */ - filter?: string; - /** - * Optional. The maximum number of items to return. If unspecified, a maximum of 50 System Versions will be returned. The maximum value is 1000; values above 1000 will be reset to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying the requested page of results to return. All fields except the filter should remain the same as in the request that provided this page token. - */ - pageToken?: string; - /** - * Required. The parent value for the MinorVersion resource with the format: projects/{project\}/locations/{location\}/giVersions/{gi_version\} - */ - parent?: string; - } - - export class Resource$Projects$Locations$Goldengateconnectionassignments { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new GoldengateConnectionAssignment in a given project and location. + * Updates the `labels` of a single GoldengateConnectionAssignment. * @example * ```js * // Before running the sample: @@ -15423,14 +17499,14 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnectionAssignments.create( + * await oracledatabase.projects.locations.goldengateConnectionAssignments.patch( * { - * // Required. The ID of the GoldengateConnectionAssignment to create. - * goldengateConnectionAssignmentId: 'placeholder-value', - * // Required. The parent resource where this GoldengateConnectionAssignment will be created. Format: projects/{project\}/locations/{location\} - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * // Identifier. The name of the GoldengateConnectionAssignment resource in the following format: projects/{project\}/locations/{region\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} + * name: 'projects/my-project/locations/my-location/goldengateConnectionAssignments/my-goldengateConnectionAssignment', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). * requestId: 'placeholder-value', + * // Optional. A mask specifying which fields in the GoldengateConnectionAssignment should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -15470,32 +17546,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, + patch( + params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create + | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -15510,13 +17586,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create; + {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create; + {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch; options = {}; } @@ -15530,17 +17606,15 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1/{+parent}/goldengateConnectionAssignments' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -15554,7 +17628,7 @@ export namespace oracledatabase_v1 { } /** - * Deletes a single GoldengateConnectionAssignment. + * Tests a single GoldengateConnectionAssignment. * @example * ```js * // Before running the sample: @@ -15584,23 +17658,27 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnectionAssignments.delete( + * await oracledatabase.projects.locations.goldengateConnectionAssignments.test( * { - * // Required. The name of the GoldengateConnectionAssignment to delete. Format: projects/{project\}/locations/{location\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} + * // Required. Name of the connection assignment for which to test connection. projects/{project\}/locations/{region\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} * name: 'projects/my-project/locations/my-location/goldengateConnectionAssignments/my-goldengateConnectionAssignment', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "type": "my_type" + * // } + * }, * }, * ); * console.log(res.data); * * // Example response * // { - * // "done": false, * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "errors": [], + * // "resultType": "my_resultType" * // } * } * @@ -15616,53 +17694,62 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, + test( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, + test( + params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + test( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + test( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete, - callback: BodyResponseCallback + test( + params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + test( + callback: BodyResponseCallback + ): void; + test( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete; + {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete; + {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test; options = {}; } @@ -15676,8 +17763,8 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:test').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -15688,17 +17775,114 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create extends StandardParameters { /** - * Gets details of a single GoldengateConnectionAssignment. + * Required. The ID of the GoldengateConnectionAssignment to create. + */ + goldengateConnectionAssignmentId?: string; + /** + * Required. The parent resource where this GoldengateConnectionAssignment will be created. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoldengateConnectionAssignment; + } + export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete extends StandardParameters { + /** + * Required. The name of the GoldengateConnectionAssignment to delete. Format: projects/{project\}/locations/{location\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get extends StandardParameters { + /** + * Required. The name of the GoldengateConnectionAssignment to retrieve. Format: projects/{project\}/locations/{location\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$List extends StandardParameters { + /** + * Optional. A filter expression that filters GoldengateConnectionAssignments listed in the response. + */ + filter?: string; + /** + * Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "DESC" after a field name for descending. + */ + orderBy?: string; + /** + * Optional. The maximum number of GoldengateConnectionAssignments to return. The service may return fewer than this value. If unspecified, at most 50 GoldengateConnectionAssignments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous `ListGoldengateConnectionAssignments` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoldengateConnectionAssignments` must match the call that provided the page token. + */ + pageToken?: string; + /** + * Required. The parent value for the GoldengateConnectionAssignments. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch extends StandardParameters { + /** + * Identifier. The name of the GoldengateConnectionAssignment resource in the following format: projects/{project\}/locations/{region\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + /** + * Optional. A mask specifying which fields in the GoldengateConnectionAssignment should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoldengateConnectionAssignment; + } + export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test extends StandardParameters { + /** + * Required. Name of the connection assignment for which to test connection. projects/{project\}/locations/{region\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestGoldengateConnectionAssignmentRequest; + } + + export class Resource$Projects$Locations$Goldengateconnections { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new GoldengateConnection in a given project and location. * @example * ```js * // Before running the sample: @@ -15728,22 +17912,39 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnectionAssignments.get( - * { - * // Required. The name of the GoldengateConnectionAssignment to retrieve. Format: projects/{project\}/locations/{location\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} - * name: 'projects/my-project/locations/my-location/goldengateConnectionAssignments/my-goldengateConnectionAssignment', + * await oracledatabase.projects.locations.goldengateConnections.create({ + * // Required. The ID of the GoldengateConnection to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * goldengateConnectionId: 'placeholder-value', + * // Required. The value for parent of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "ociUrl": "my_ociUrl", + * // "odbNetwork": "my_odbNetwork", + * // "odbSubnet": "my_odbSubnet", + * // "properties": {} + * // } * }, - * ); + * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "properties": {} + * // "response": {} * // } * } * @@ -15759,58 +17960,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, + create( + params: Params$Resource$Projects$Locations$Goldengateconnections$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, + create( + params?: Params$Resource$Projects$Locations$Goldengateconnections$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Goldengateconnections$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Goldengateconnections$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Goldengateconnections$Create, + callback: BodyResponseCallback ): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnections$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get; + {}) as Params$Resource$Projects$Locations$Goldengateconnections$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get; + {} as Params$Resource$Projects$Locations$Goldengateconnections$Create; options = {}; } @@ -15824,31 +18020,32 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+parent}/goldengateConnections').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Lists GoldengateConnectionAssignments in a given project and location. + * Deletes a single GoldengateConnection. * @example * ```js * // Before running the sample: @@ -15878,27 +18075,21 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnectionAssignments.list( - * { - * // Optional. A filter expression that filters GoldengateConnectionAssignments listed in the response. - * filter: 'placeholder-value', - * // Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "DESC" after a field name for descending. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of GoldengateConnectionAssignments to return. The service may return fewer than this value. If unspecified, at most 50 GoldengateConnectionAssignments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A page token, received from a previous `ListGoldengateConnectionAssignments` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoldengateConnectionAssignments` must match the call that provided the page token. - * pageToken: 'placeholder-value', - * // Required. The parent value for the GoldengateConnectionAssignments. Format: projects/{project\}/locations/{location\} - * parent: 'projects/my-project/locations/my-location', - * }, - * ); + * await oracledatabase.projects.locations.goldengateConnections.delete({ + * // Required. The name of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}/goldengateConnections/{goldengate_connection\}. + * name: 'projects/my-project/locations/my-location/goldengateConnections/my-goldengateConnection', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "goldengateConnectionAssignments": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -15914,62 +18105,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, + delete( + params: Params$Resource$Projects$Locations$Goldengateconnections$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, + delete( + params?: Params$Resource$Projects$Locations$Goldengateconnections$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Goldengateconnections$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Goldengateconnections$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Goldengateconnections$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnectionassignments$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnections$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$List; + {}) as Params$Resource$Projects$Locations$Goldengateconnections$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$List; + {} as Params$Resource$Projects$Locations$Goldengateconnections$Delete; options = {}; } @@ -15983,33 +18165,29 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1/{+parent}/goldengateConnectionAssignments' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the `labels` of a single GoldengateConnectionAssignment. + * Gets details of a single GoldengateConnection. * @example * ```js * // Before running the sample: @@ -16038,39 +18216,25 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await oracledatabase.projects.locations.goldengateConnectionAssignments.patch( - * { - * // Identifier. The name of the GoldengateConnectionAssignment resource in the following format: projects/{project\}/locations/{region\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} - * name: 'projects/my-project/locations/my-location/goldengateConnectionAssignments/my-goldengateConnectionAssignment', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', - * // Optional. A mask specifying which fields in the GoldengateConnectionAssignment should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "labels": {}, - * // "name": "my_name", - * // "properties": {} - * // } - * }, - * }, - * ); + * const res = await oracledatabase.projects.locations.goldengateConnections.get( + * { + * // Required. The name of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}/goldengateConnections/{goldengate_connection\}. + * name: 'projects/my-project/locations/my-location/goldengateConnections/my-goldengateConnection', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, * // "name": "my_name", - * // "response": {} + * // "ociUrl": "my_ociUrl", + * // "odbNetwork": "my_odbNetwork", + * // "odbSubnet": "my_odbSubnet", + * // "properties": {} * // } * } * @@ -16086,53 +18250,55 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, + get( + params: Params$Resource$Projects$Locations$Goldengateconnections$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, + get( + params?: Params$Resource$Projects$Locations$Goldengateconnections$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Goldengateconnections$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Goldengateconnections$Get, + options: + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Goldengateconnections$Get, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnections$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch; + {}) as Params$Resource$Projects$Locations$Goldengateconnections$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch; + {} as Params$Resource$Projects$Locations$Goldengateconnections$Get; options = {}; } @@ -16147,7 +18313,7 @@ export namespace oracledatabase_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -16158,17 +18324,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Tests a single GoldengateConnectionAssignment. + * Lists all the GoldengateConnections for the given project and location. * @example * ```js * // Before running the sample: @@ -16198,27 +18364,25 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnectionAssignments.test( - * { - * // Required. Name of the connection assignment for which to test connection. projects/{project\}/locations/{region\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} - * name: 'projects/my-project/locations/my-location/goldengateConnectionAssignments/my-goldengateConnectionAssignment', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "type": "my_type" - * // } - * }, - * }, - * ); + * await oracledatabase.projects.locations.goldengateConnections.list({ + * // Optional. An expression for filtering the results of the request. + * filter: 'placeholder-value', + * // Optional. An expression for ordering the results of the request. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 GoldengateConnections will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous ListGoldengateConnections call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent value for GoldengateConnections in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "error": {}, - * // "errors": [], - * // "resultType": "my_resultType" + * // "goldengateConnections": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -16234,62 +18398,62 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - test( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, + list( + params: Params$Resource$Projects$Locations$Goldengateconnections$List, options: StreamMethodOptions ): Promise>; - test( - params?: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, + list( + params?: Params$Resource$Projects$Locations$Goldengateconnections$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - test( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, + list( + params: Params$Resource$Projects$Locations$Goldengateconnections$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - test( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, + list( + params: Params$Resource$Projects$Locations$Goldengateconnections$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - test( - params: Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Goldengateconnections$List, + callback: BodyResponseCallback ): void; - test( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - test( + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnections$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test; + {}) as Params$Resource$Projects$Locations$Goldengateconnections$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test; + {} as Params$Resource$Projects$Locations$Goldengateconnections$List; options = {}; } @@ -16303,126 +18467,34 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:test').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+parent}/goldengateConnections').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } - } - - export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Create extends StandardParameters { - /** - * Required. The ID of the GoldengateConnectionAssignment to create. - */ - goldengateConnectionAssignmentId?: string; - /** - * Required. The parent resource where this GoldengateConnectionAssignment will be created. Format: projects/{project\}/locations/{location\} - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoldengateConnectionAssignment; - } - export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Delete extends StandardParameters { - /** - * Required. The name of the GoldengateConnectionAssignment to delete. Format: projects/{project\}/locations/{location\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Get extends StandardParameters { - /** - * Required. The name of the GoldengateConnectionAssignment to retrieve. Format: projects/{project\}/locations/{location\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$List extends StandardParameters { - /** - * Optional. A filter expression that filters GoldengateConnectionAssignments listed in the response. - */ - filter?: string; - /** - * Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "DESC" after a field name for descending. - */ - orderBy?: string; - /** - * Optional. The maximum number of GoldengateConnectionAssignments to return. The service may return fewer than this value. If unspecified, at most 50 GoldengateConnectionAssignments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A page token, received from a previous `ListGoldengateConnectionAssignments` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListGoldengateConnectionAssignments` must match the call that provided the page token. - */ - pageToken?: string; - /** - * Required. The parent value for the GoldengateConnectionAssignments. Format: projects/{project\}/locations/{location\} - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Patch extends StandardParameters { - /** - * Identifier. The name of the GoldengateConnectionAssignment resource in the following format: projects/{project\}/locations/{region\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - /** - * Optional. A mask specifying which fields in the GoldengateConnectionAssignment should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoldengateConnectionAssignment; - } - export interface Params$Resource$Projects$Locations$Goldengateconnectionassignments$Test extends StandardParameters { - /** - * Required. Name of the connection assignment for which to test connection. projects/{project\}/locations/{region\}/goldengateConnectionAssignments/{goldengate_connection_assignment\} - */ - name?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestGoldengateConnectionAssignmentRequest; - } - - export class Resource$Projects$Locations$Goldengateconnections { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new GoldengateConnection in a given project and location. + * Updates the `labels` of a single GoldengateConnection. * @example * ```js * // Before running the sample: @@ -16452,13 +18524,13 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnections.create({ - * // Required. The ID of the GoldengateConnection to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - * goldengateConnectionId: 'placeholder-value', - * // Required. The value for parent of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * await oracledatabase.projects.locations.goldengateConnections.patch({ + * // Identifier. The name of the GoldengateConnection resource in the following format: projects/{project\}/locations/{region\}/goldengateConnections/{goldengate_connection\} + * name: 'projects/my-project/locations/my-location/goldengateConnections/my-goldengateConnection', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). * requestId: 'placeholder-value', + * // Optional. A mask specifying which fields in the GoldengateConnection should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -16500,32 +18572,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Goldengateconnections$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengateconnections$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Goldengateconnections$Create, + patch( + params?: Params$Resource$Projects$Locations$Goldengateconnections$Patch, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Goldengateconnections$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengateconnections$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Goldengateconnections$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengateconnections$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Goldengateconnections$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengateconnections$Patch, callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnections$Create + | Params$Resource$Projects$Locations$Goldengateconnections$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -16540,13 +18612,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnections$Create; + {}) as Params$Resource$Projects$Locations$Goldengateconnections$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnections$Create; + {} as Params$Resource$Projects$Locations$Goldengateconnections$Patch; options = {}; } @@ -16560,18 +18632,15 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/goldengateConnections').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -16583,9 +18652,93 @@ export namespace oracledatabase_v1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Goldengateconnections$Create extends StandardParameters { /** - * Deletes a single GoldengateConnection. + * Required. The ID of the GoldengateConnection to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + */ + goldengateConnectionId?: string; + /** + * Required. The value for parent of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoldengateConnection; + } + export interface Params$Resource$Projects$Locations$Goldengateconnections$Delete extends StandardParameters { + /** + * Required. The name of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}/goldengateConnections/{goldengate_connection\}. + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Goldengateconnections$Get extends StandardParameters { + /** + * Required. The name of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}/goldengateConnections/{goldengate_connection\}. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Goldengateconnections$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. + */ + filter?: string; + /** + * Optional. An expression for ordering the results of the request. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If unspecified, at most 50 GoldengateConnections will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous ListGoldengateConnections call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent value for GoldengateConnections in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Goldengateconnections$Patch extends StandardParameters { + /** + * Identifier. The name of the GoldengateConnection resource in the following format: projects/{project\}/locations/{region\}/goldengateConnections/{goldengate_connection\} + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + /** + * Optional. A mask specifying which fields in the GoldengateConnection should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoldengateConnection; + } + + export class Resource$Projects$Locations$Goldengateconnectiontypes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists GoldengateConnectionTypes in a given project and location. * @example * ```js * // Before running the sample: @@ -16615,21 +18768,23 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnections.delete({ - * // Required. The name of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}/goldengateConnections/{goldengate_connection\}. - * name: 'projects/my-project/locations/my-location/goldengateConnections/my-goldengateConnection', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', + * await oracledatabase.projects.locations.goldengateConnectionTypes.list({ + * // Optional. An expression for filtering the results of the request. The connection_type field must be specified in the format: `connection_type="ORACLE"`. + * filter: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListGoldengateConnectionTypesRequest Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "goldengateConnectionTypes": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -16645,53 +18800,62 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Projects$Locations$Goldengateconnections$Delete, + list( + params: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Goldengateconnections$Delete, + list( + params?: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Goldengateconnections$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Goldengateconnections$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Goldengateconnections$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnections$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengateconnectiontypes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnections$Delete; + {}) as Params$Resource$Projects$Locations$Goldengateconnectiontypes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnections$Delete; + {} as Params$Resource$Projects$Locations$Goldengateconnectiontypes$List; options = {}; } @@ -16705,29 +18869,60 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+parent}/goldengateConnectionTypes').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + + export interface Params$Resource$Projects$Locations$Goldengateconnectiontypes$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. The connection_type field must be specified in the format: `connection_type="ORACLE"`. + */ + filter?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListGoldengateConnectionTypesRequest Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Goldengatedeploymentenvironments { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Gets details of a single GoldengateConnection. + * Lists GoldengateDeploymentEnvironments in a given project and location. * @example * ```js * // Before running the sample: @@ -16756,25 +18951,24 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.goldengateConnections.get( - * { - * // Required. The name of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}/goldengateConnections/{goldengate_connection\}. - * name: 'projects/my-project/locations/my-location/goldengateConnections/my-goldengateConnection', - * }, - * ); + * const res = + * await oracledatabase.projects.locations.goldengateDeploymentEnvironments.list( + * { + * // Optional. The maximum number of items to return. If unspecified, at most 50 deployment environments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent, which owns this collection of GoldengateDeploymentEnvironments. Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, - * // "name": "my_name", - * // "ociUrl": "my_ociUrl", - * // "odbNetwork": "my_odbNetwork", - * // "odbSubnet": "my_odbSubnet", - * // "properties": {} + * // "goldengateDeploymentEnvironments": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -16790,55 +18984,62 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Goldengateconnections$Get, + list( + params: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Goldengateconnections$Get, + list( + params?: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Goldengateconnections$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Goldengateconnections$Get, + list( + params: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Goldengateconnections$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnections$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnections$Get; + {}) as Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnections$Get; + {} as Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List; options = {}; } @@ -16852,29 +19053,55 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: ( + rootUrl + '/v1/{+parent}/goldengateDeploymentEnvironments' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List extends StandardParameters { /** - * Lists all the GoldengateConnections for the given project and location. + * Optional. The maximum number of items to return. If unspecified, at most 50 deployment environments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent, which owns this collection of GoldengateDeploymentEnvironments. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Goldengatedeployments { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new GoldengateDeployment in a given project and location. * @example * ```js * // Before running the sample: @@ -16904,25 +19131,40 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnections.list({ - * // Optional. An expression for filtering the results of the request. - * filter: 'placeholder-value', - * // Optional. An expression for ordering the results of the request. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, at most 50 GoldengateConnections will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A page token, received from a previous ListGoldengateConnections call. Provide this to retrieve the subsequent page. - * pageToken: 'placeholder-value', - * // Required. The parent value for GoldengateConnections in the following format: projects/{project\}/locations/{location\}. + * await oracledatabase.projects.locations.goldengateDeployments.create({ + * // Required. The ID of the GoldengateDeployment to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * goldengateDeploymentId: 'placeholder-value', + * // Required. The value for parent of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}. * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "ociUrl": "my_ociUrl", + * // "odbNetwork": "my_odbNetwork", + * // "odbSubnet": "my_odbSubnet", + * // "properties": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "goldengateConnections": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -16938,62 +19180,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Goldengateconnections$List, + create( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Goldengateconnections$List, + create( + params?: Params$Resource$Projects$Locations$Goldengatedeployments$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Goldengateconnections$List, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Goldengateconnections$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Goldengateconnections$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Create, + callback: BodyResponseCallback ): void; - list( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnections$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengatedeployments$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnections$List; + {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnections$List; + {} as Params$Resource$Projects$Locations$Goldengatedeployments$Create; options = {}; } @@ -17007,11 +19240,11 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/goldengateConnections').replace( + url: (rootUrl + '/v1/{+parent}/goldengateDeployments').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -17022,19 +19255,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the `labels` of a single GoldengateConnection. + * Deletes a single GoldengateDeployment. * @example * ```js * // Before running the sample: @@ -17064,29 +19295,11 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateConnections.patch({ - * // Identifier. The name of the GoldengateConnection resource in the following format: projects/{project\}/locations/{region\}/goldengateConnections/{goldengate_connection\} - * name: 'projects/my-project/locations/my-location/goldengateConnections/my-goldengateConnection', + * await oracledatabase.projects.locations.goldengateDeployments.delete({ + * // Required. The name of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + * name: 'projects/my-project/locations/my-location/goldengateDeployments/my-goldengateDeployment', * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). * requestId: 'placeholder-value', - * // Optional. A mask specifying which fields in the GoldengateConnection should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, - * // "name": "my_name", - * // "ociUrl": "my_ociUrl", - * // "odbNetwork": "my_odbNetwork", - * // "odbSubnet": "my_odbSubnet", - * // "properties": {} - * // } - * }, * }); * console.log(res.data); * @@ -17112,32 +19325,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Goldengateconnections$Patch, + delete( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Goldengateconnections$Patch, + delete( + params?: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Goldengateconnections$Patch, + delete( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Goldengateconnections$Patch, + delete( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Goldengateconnections$Patch, + delete( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnections$Patch + | Params$Resource$Projects$Locations$Goldengatedeployments$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -17152,13 +19365,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnections$Patch; + {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnections$Patch; + {} as Params$Resource$Projects$Locations$Goldengatedeployments$Delete; options = {}; } @@ -17173,7 +19386,7 @@ export namespace oracledatabase_v1 { options: Object.assign( { url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -17192,93 +19405,9 @@ export namespace oracledatabase_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Goldengateconnections$Create extends StandardParameters { - /** - * Required. The ID of the GoldengateConnection to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - */ - goldengateConnectionId?: string; - /** - * Required. The value for parent of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoldengateConnection; - } - export interface Params$Resource$Projects$Locations$Goldengateconnections$Delete extends StandardParameters { - /** - * Required. The name of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}/goldengateConnections/{goldengate_connection\}. - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Goldengateconnections$Get extends StandardParameters { - /** - * Required. The name of the GoldengateConnection in the following format: projects/{project\}/locations/{location\}/goldengateConnections/{goldengate_connection\}. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Goldengateconnections$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. - */ - filter?: string; - /** - * Optional. An expression for ordering the results of the request. - */ - orderBy?: string; - /** - * Optional. The maximum number of items to return. If unspecified, at most 50 GoldengateConnections will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A page token, received from a previous ListGoldengateConnections call. Provide this to retrieve the subsequent page. - */ - pageToken?: string; - /** - * Required. The parent value for GoldengateConnections in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Goldengateconnections$Patch extends StandardParameters { - /** - * Identifier. The name of the GoldengateConnection resource in the following format: projects/{project\}/locations/{region\}/goldengateConnections/{goldengate_connection\} - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - /** - * Optional. A mask specifying which fields in the GoldengateConnection should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoldengateConnection; - } - - export class Resource$Projects$Locations$Goldengateconnectiontypes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists GoldengateConnectionTypes in a given project and location. + * Gets details of a single GoldengateDeployment. * @example * ```js * // Before running the sample: @@ -17298,33 +19427,35 @@ export namespace oracledatabase_v1 { * * async function main() { * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: ['https://www.googleapis.com/auth/cloud-platform'], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = - * await oracledatabase.projects.locations.goldengateConnectionTypes.list({ - * // Optional. An expression for filtering the results of the request. The connection_type field must be specified in the format: `connection_type="ORACLE"`. - * filter: 'placeholder-value', - * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. Parent value for ListGoldengateConnectionTypesRequest Format: projects/{project\}/locations/{location\} - * parent: 'projects/my-project/locations/my-location', - * }); + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.goldengateDeployments.get( + * { + * // Required. The name of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + * name: 'projects/my-project/locations/my-location/goldengateDeployments/my-goldengateDeployment', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "goldengateConnectionTypes": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "createTime": "my_createTime", + * // "displayName": "my_displayName", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "ociUrl": "my_ociUrl", + * // "odbNetwork": "my_odbNetwork", + * // "odbSubnet": "my_odbSubnet", + * // "properties": {} * // } * } * @@ -17340,62 +19471,55 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, + get( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, + get( + params?: Params$Resource$Projects$Locations$Goldengatedeployments$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, + get( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Get, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Goldengateconnectiontypes$List, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Get, + callback: BodyResponseCallback ): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengateconnectiontypes$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengatedeployments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengateconnectiontypes$List; + {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengateconnectiontypes$List; + {} as Params$Resource$Projects$Locations$Goldengatedeployments$Get; options = {}; } @@ -17409,60 +19533,29 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/goldengateConnectionTypes').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Goldengateconnectiontypes$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. The connection_type field must be specified in the format: `connection_type="ORACLE"`. - */ - filter?: string; - /** - * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. Parent value for ListGoldengateConnectionTypesRequest Format: projects/{project\}/locations/{location\} - */ - parent?: string; - } - - export class Resource$Projects$Locations$Goldengatedeploymentenvironments { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists GoldengateDeploymentEnvironments in a given project and location. + * Lists all the GoldengateDeployments for the given project and location. * @example * ```js * // Before running the sample: @@ -17492,21 +19585,23 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateDeploymentEnvironments.list( - * { - * // Optional. The maximum number of items to return. If unspecified, at most 50 deployment environments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. The parent, which owns this collection of GoldengateDeploymentEnvironments. Format: projects/{project\}/locations/{location\} - * parent: 'projects/my-project/locations/my-location', - * }, - * ); + * await oracledatabase.projects.locations.goldengateDeployments.list({ + * // Optional. An expression for filtering the results of the request. + * filter: 'placeholder-value', + * // Optional. An expression for ordering the results of the request. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 GoldengateDeployments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A page token, received from a previous ListGoldengateDeployments call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent value for GoldengateDeployments in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "goldengateDeploymentEnvironments": [], + * // "goldengateDeployments": [], * // "nextPageToken": "my_nextPageToken", * // "unreachable": [] * // } @@ -17525,61 +19620,61 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, + params: Params$Resource$Projects$Locations$Goldengatedeployments$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, + params?: Params$Resource$Projects$Locations$Goldengatedeployments$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, + params: Params$Resource$Projects$Locations$Goldengatedeployments$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, + params: Params$Resource$Projects$Locations$Goldengatedeployments$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Goldengatedeployments$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengatedeployments$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List; + {}) as Params$Resource$Projects$Locations$Goldengatedeployments$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List; + {} as Params$Resource$Projects$Locations$Goldengatedeployments$List; options = {}; } @@ -17593,9 +19688,10 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1/{+parent}/goldengateDeploymentEnvironments' - ).replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/goldengateDeployments').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -17607,41 +19703,19 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } - } - - export interface Params$Resource$Projects$Locations$Goldengatedeploymentenvironments$List extends StandardParameters { - /** - * Optional. The maximum number of items to return. If unspecified, at most 50 deployment environments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. The parent, which owns this collection of GoldengateDeploymentEnvironments. Format: projects/{project\}/locations/{location\} - */ - parent?: string; - } - - export class Resource$Projects$Locations$Goldengatedeployments { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new GoldengateDeployment in a given project and location. + * Updates the `labels` of a single GoldengateDeployment. * @example * ```js * // Before running the sample: @@ -17671,13 +19745,13 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateDeployments.create({ - * // Required. The ID of the GoldengateDeployment to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - * goldengateDeploymentId: 'placeholder-value', - * // Required. The value for parent of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + * await oracledatabase.projects.locations.goldengateDeployments.patch({ + * // Identifier. The name of the GoldengateDeployment resource in the following format: projects/{project\}/locations/{region\}/goldengateDeployments/{goldengate_deployment\} + * name: 'projects/my-project/locations/my-location/goldengateDeployments/my-goldengateDeployment', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). * requestId: 'placeholder-value', + * // Optional. A mask specifying which fields in the GoldengateDeployment should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -17720,32 +19794,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - create( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Goldengatedeployments$Create, + patch( + params?: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, options?: MethodOptions ): Promise>; - create( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Create, + patch( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeployments$Create + | Params$Resource$Projects$Locations$Goldengatedeployments$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -17760,13 +19834,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Create; + {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengatedeployments$Create; + {} as Params$Resource$Projects$Locations$Goldengatedeployments$Patch; options = {}; } @@ -17780,18 +19854,15 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/goldengateDeployments').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -17805,7 +19876,7 @@ export namespace oracledatabase_v1 { } /** - * Deletes a single GoldengateDeployment. + * Starts a single GoldengateDeployment. * @example * ```js * // Before running the sample: @@ -17835,11 +19906,15 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateDeployments.delete({ - * // Required. The name of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + * await oracledatabase.projects.locations.goldengateDeployments.start({ + * // Required. The name of the Goldengate Deployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. * name: 'projects/my-project/locations/my-location/goldengateDeployments/my-goldengateDeployment', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, * }); * console.log(res.data); * @@ -17865,32 +19940,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - delete( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, + start( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Start, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, + start( + params?: Params$Resource$Projects$Locations$Goldengatedeployments$Start, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, + start( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Start, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, + start( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Start, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Delete, + start( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Start, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + start(callback: BodyResponseCallback): void; + start( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeployments$Delete + | Params$Resource$Projects$Locations$Goldengatedeployments$Start | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -17905,13 +19980,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Delete; + {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Start; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengatedeployments$Delete; + {} as Params$Resource$Projects$Locations$Goldengatedeployments$Start; options = {}; } @@ -17925,8 +20000,8 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1/{+name}:start').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -17947,7 +20022,7 @@ export namespace oracledatabase_v1 { } /** - * Gets details of a single GoldengateDeployment. + * Stops a single GoldengateDeployment. * @example * ```js * // Before running the sample: @@ -17976,26 +20051,26 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.goldengateDeployments.get( - * { - * // Required. The name of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + * const res = + * await oracledatabase.projects.locations.goldengateDeployments.stop({ + * // Required. The name of the Goldengate Deployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. * name: 'projects/my-project/locations/my-location/goldengateDeployments/my-goldengateDeployment', - * }, - * ); + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "ociUrl": "my_ociUrl", - * // "odbNetwork": "my_odbNetwork", - * // "odbSubnet": "my_odbSubnet", - * // "properties": {} + * // "response": {} * // } * } * @@ -18011,55 +20086,53 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - get( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Get, + stop( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Goldengatedeployments$Get, + stop( + params?: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Get, + ): Promise>; + stop( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Get, - options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + stop( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Get, - callback: BodyResponseCallback + stop( + params: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + stop(callback: BodyResponseCallback): void; + stop( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeployments$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengatedeployments$Stop + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Get; + {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Stop; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengatedeployments$Get; + {} as Params$Resource$Projects$Locations$Goldengatedeployments$Stop; options = {}; } @@ -18073,8 +20146,8 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}:stop').replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options @@ -18085,17 +20158,123 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Goldengatedeployments$Create extends StandardParameters { /** - * Lists all the GoldengateDeployments for the given project and location. + * Required. The ID of the GoldengateDeployment to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + */ + goldengateDeploymentId?: string; + /** + * Required. The value for parent of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoldengateDeployment; + } + export interface Params$Resource$Projects$Locations$Goldengatedeployments$Delete extends StandardParameters { + /** + * Required. The name of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Goldengatedeployments$Get extends StandardParameters { + /** + * Required. The name of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Goldengatedeployments$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. + */ + filter?: string; + /** + * Optional. An expression for ordering the results of the request. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If unspecified, at most 50 GoldengateDeployments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A page token, received from a previous ListGoldengateDeployments call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent value for GoldengateDeployments in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Goldengatedeployments$Patch extends StandardParameters { + /** + * Identifier. The name of the GoldengateDeployment resource in the following format: projects/{project\}/locations/{region\}/goldengateDeployments/{goldengate_deployment\} + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + /** + * Optional. A mask specifying which fields in the GoldengateDeployment should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoldengateDeployment; + } + export interface Params$Resource$Projects$Locations$Goldengatedeployments$Start extends StandardParameters { + /** + * Required. The name of the Goldengate Deployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$StartGoldengateDeploymentRequest; + } + export interface Params$Resource$Projects$Locations$Goldengatedeployments$Stop extends StandardParameters { + /** + * Required. The name of the Goldengate Deployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$StopGoldengateDeploymentRequest; + } + + export class Resource$Projects$Locations$Goldengatedeploymenttypes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists GoldenGateDeploymentTypes in a given project and location. * @example * ```js * // Before running the sample: @@ -18125,23 +20304,23 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateDeployments.list({ - * // Optional. An expression for filtering the results of the request. + * await oracledatabase.projects.locations.goldengateDeploymentTypes.list({ + * // Optional. An expression for filtering the results of the request. Either the deployment_type and ogg_version fields must be specified in the format: `deployment_type="DATABASE_ORACLE"` or `ogg_version="version"`. Allowed values for deployment_type are: `DATABASE_ORACLE`, `BIGDATA`, `DATABASE_MICROSOFT_SQLSERVER`, `DATABASE_MYSQL`, `DATABASE_POSTGRESQL`, `DATABASE_DB2ZOS`, `DATABASE_DB2I`, `GGSA`, `DATA_TRANSFORMS`. * filter: 'placeholder-value', - * // Optional. An expression for ordering the results of the request. + * // Optional. Hint for how to order the results * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, at most 50 GoldengateDeployments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. * pageSize: 'placeholder-value', - * // Optional. A page token, received from a previous ListGoldengateDeployments call. Provide this to retrieve the subsequent page. + * // Optional. A token identifying a page of results the server should return. * pageToken: 'placeholder-value', - * // Required. The parent value for GoldengateDeployments in the following format: projects/{project\}/locations/{location\}. + * // Required. The parent resource. Format: projects/{project\}/locations/{location\} * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "goldengateDeployments": [], + * // "goldengateDeploymentTypes": [], * // "nextPageToken": "my_nextPageToken", * // "unreachable": [] * // } @@ -18160,61 +20339,61 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Goldengatedeployments$List, + params: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Goldengatedeployments$List, + params?: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; list( - params: Params$Resource$Projects$Locations$Goldengatedeployments$List, + params: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Goldengatedeployments$List, + params: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Goldengatedeployments$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeployments$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeployments$List; + {}) as Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengatedeployments$List; + {} as Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List; options = {}; } @@ -18228,7 +20407,7 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/goldengateDeployments').replace( + url: (rootUrl + '/v1/{+parent}/goldengateDeploymentTypes').replace( /([^:]\/)\/+/g, '$1' ), @@ -18243,19 +20422,49 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } + } + export interface Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List extends StandardParameters { /** - * Updates the `labels` of a single GoldengateDeployment. + * Optional. An expression for filtering the results of the request. Either the deployment_type and ogg_version fields must be specified in the format: `deployment_type="DATABASE_ORACLE"` or `ogg_version="version"`. Allowed values for deployment_type are: `DATABASE_ORACLE`, `BIGDATA`, `DATABASE_MICROSOFT_SQLSERVER`, `DATABASE_MYSQL`, `DATABASE_POSTGRESQL`, `DATABASE_DB2ZOS`, `DATABASE_DB2I`, `GGSA`, `DATA_TRANSFORMS`. + */ + filter?: string; + /** + * Optional. Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. The parent resource. Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Goldengatedeploymentversions { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists GoldengateDeploymentVersions in a given project and location. * @example * ```js * // Before running the sample: @@ -18285,40 +20494,23 @@ export namespace oracledatabase_v1 { * * // Do the magic * const res = - * await oracledatabase.projects.locations.goldengateDeployments.patch({ - * // Identifier. The name of the GoldengateDeployment resource in the following format: projects/{project\}/locations/{region\}/goldengateDeployments/{goldengate_deployment\} - * name: 'projects/my-project/locations/my-location/goldengateDeployments/my-goldengateDeployment', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', - * // Optional. A mask specifying which fields in the GoldengateDeployment should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "displayName": "my_displayName", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, - * // "name": "my_name", - * // "ociUrl": "my_ociUrl", - * // "odbNetwork": "my_odbNetwork", - * // "odbSubnet": "my_odbSubnet", - * // "properties": {} - * // } - * }, + * await oracledatabase.projects.locations.goldengateDeploymentVersions.list({ + * // Optional. An expression for filtering the results of the request. Either the deployment_id and deployment_type fields must be specified in the format: `deployment_id="id"` or `deployment_type="DATABASE_ORACLE"`. + * filter: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListGoldengateDeploymentVersionsRequest Format: projects/{project\}/locations/{location\} + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "goldengateDeploymentVersions": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -18334,53 +20526,62 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patch( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, + list( + params: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, + list( + params?: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeployments$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Goldengatedeploymentversions$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Patch; + {}) as Params$Resource$Projects$Locations$Goldengatedeploymentversions$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Goldengatedeployments$Patch; + {} as Params$Resource$Projects$Locations$Goldengatedeploymentversions$List; options = {}; } @@ -18394,29 +20595,66 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: ( + rootUrl + '/v1/{+parent}/goldengateDeploymentVersions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Projects$Locations$Goldengatedeploymentversions$List extends StandardParameters { /** - * Starts a single GoldengateDeployment. + * Optional. An expression for filtering the results of the request. Either the deployment_id and deployment_type fields must be specified in the format: `deployment_id="id"` or `deployment_type="DATABASE_ORACLE"`. + */ + filter?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. The maximum value is 1000; values above 1000 will be coerced to 1000. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListGoldengateDeploymentVersionsRequest Format: projects/{project\}/locations/{location\} + */ + parent?: string; + } + + export class Resource$Projects$Locations$Odbnetworks { + context: APIRequestContext; + odbDnsZones: Resource$Projects$Locations$Odbnetworks$Odbdnszones; + odbSubnets: Resource$Projects$Locations$Odbnetworks$Odbsubnets; + constructor(context: APIRequestContext) { + this.context = context; + this.odbDnsZones = + new Resource$Projects$Locations$Odbnetworks$Odbdnszones(this.context); + this.odbSubnets = new Resource$Projects$Locations$Odbnetworks$Odbsubnets( + this.context + ); + } + + /** + * Creates a new ODB Network in a given project and location. * @example * ```js * // Before running the sample: @@ -18445,17 +20683,30 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await oracledatabase.projects.locations.goldengateDeployments.start({ - * // Required. The name of the Goldengate Deployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. - * name: 'projects/my-project/locations/my-location/goldengateDeployments/my-goldengateDeployment', + * const res = await oracledatabase.projects.locations.odbNetworks.create({ + * // Required. The ID of the OdbNetwork to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * odbNetworkId: 'placeholder-value', + * // Required. The parent value for the OdbNetwork in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "reconciling": false, + * // "serviceConnectivityConfig": {}, + * // "state": "my_state" + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -18480,32 +20731,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - start( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Start, + create( + params: Params$Resource$Projects$Locations$Odbnetworks$Create, options: StreamMethodOptions ): Promise>; - start( - params?: Params$Resource$Projects$Locations$Goldengatedeployments$Start, + create( + params?: Params$Resource$Projects$Locations$Odbnetworks$Create, options?: MethodOptions ): Promise>; - start( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Start, + create( + params: Params$Resource$Projects$Locations$Odbnetworks$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - start( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Start, + create( + params: Params$Resource$Projects$Locations$Odbnetworks$Create, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - start( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Start, + create( + params: Params$Resource$Projects$Locations$Odbnetworks$Create, callback: BodyResponseCallback ): void; - start(callback: BodyResponseCallback): void; - start( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeployments$Start + | Params$Resource$Projects$Locations$Odbnetworks$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -18520,13 +20771,12 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Start; + {}) as Params$Resource$Projects$Locations$Odbnetworks$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Goldengatedeployments$Start; + params = {} as Params$Resource$Projects$Locations$Odbnetworks$Create; options = {}; } @@ -18540,15 +20790,18 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:start').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1/{+parent}/odbNetworks').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { @@ -18562,7 +20815,7 @@ export namespace oracledatabase_v1 { } /** - * Stops a single GoldengateDeployment. + * Deletes a single ODB Network. * @example * ```js * // Before running the sample: @@ -18591,17 +20844,12 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await oracledatabase.projects.locations.goldengateDeployments.stop({ - * // Required. The name of the Goldengate Deployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. - * name: 'projects/my-project/locations/my-location/goldengateDeployments/my-goldengateDeployment', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }); + * const res = await oracledatabase.projects.locations.odbNetworks.delete({ + * // Required. The name of the resource in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. + * name: 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -18626,32 +20874,32 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stop( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, + delete( + params: Params$Resource$Projects$Locations$Odbnetworks$Delete, options: StreamMethodOptions ): Promise>; - stop( - params?: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, + delete( + params?: Params$Resource$Projects$Locations$Odbnetworks$Delete, options?: MethodOptions ): Promise>; - stop( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, + delete( + params: Params$Resource$Projects$Locations$Odbnetworks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stop( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, + delete( + params: Params$Resource$Projects$Locations$Odbnetworks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stop( - params: Params$Resource$Projects$Locations$Goldengatedeployments$Stop, + delete( + params: Params$Resource$Projects$Locations$Odbnetworks$Delete, callback: BodyResponseCallback ): void; - stop(callback: BodyResponseCallback): void; - stop( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeployments$Stop + | Params$Resource$Projects$Locations$Odbnetworks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -18666,13 +20914,12 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeployments$Stop; + {}) as Params$Resource$Projects$Locations$Odbnetworks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Goldengatedeployments$Stop; + params = {} as Params$Resource$Projects$Locations$Odbnetworks$Delete; options = {}; } @@ -18686,8 +20933,8 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}:stop').replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options @@ -18706,115 +20953,151 @@ export namespace oracledatabase_v1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Goldengatedeployments$Create extends StandardParameters { - /** - * Required. The ID of the GoldengateDeployment to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - */ - goldengateDeploymentId?: string; - /** - * Required. The value for parent of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 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 can check if original operation with the same request ID was received, and if so, will ignore 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoldengateDeployment; - } - export interface Params$Resource$Projects$Locations$Goldengatedeployments$Delete extends StandardParameters { - /** - * Required. The name of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Goldengatedeployments$Get extends StandardParameters { - /** - * Required. The name of the GoldengateDeployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Goldengatedeployments$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. - */ - filter?: string; - /** - * Optional. An expression for ordering the results of the request. - */ - orderBy?: string; - /** - * Optional. The maximum number of items to return. If unspecified, at most 50 GoldengateDeployments will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - */ - pageSize?: number; - /** - * Optional. A page token, received from a previous ListGoldengateDeployments call. Provide this to retrieve the subsequent page. - */ - pageToken?: string; - /** - * Required. The parent value for GoldengateDeployments in the following format: projects/{project\}/locations/{location\}. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Goldengatedeployments$Patch extends StandardParameters { - /** - * Identifier. The name of the GoldengateDeployment resource in the following format: projects/{project\}/locations/{region\}/goldengateDeployments/{goldengate_deployment\} - */ - name?: string; - /** - * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - */ - requestId?: string; - /** - * Optional. A mask specifying which fields in the GoldengateDeployment should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. - */ - updateMask?: string; /** - * Request body metadata - */ - requestBody?: Schema$GoldengateDeployment; - } - export interface Params$Resource$Projects$Locations$Goldengatedeployments$Start extends StandardParameters { - /** - * Required. The name of the Goldengate Deployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. + * Gets details of a single ODB Network. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/oracledatabase.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const oracledatabase = google.oracledatabase('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await oracledatabase.projects.locations.odbNetworks.get({ + * // Required. The name of the OdbNetwork in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. + * name: 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "createTime": "my_createTime", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "reconciling": false, + * // "serviceConnectivityConfig": {}, + * // "state": "my_state" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. */ - name?: string; + get( + params: Params$Resource$Projects$Locations$Odbnetworks$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Odbnetworks$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Odbnetworks$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Odbnetworks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Odbnetworks$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Odbnetworks$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Odbnetworks$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$StartGoldengateDeploymentRequest; - } - export interface Params$Resource$Projects$Locations$Goldengatedeployments$Stop extends StandardParameters { - /** - * Required. The name of the Goldengate Deployment in the following format: projects/{project\}/locations/{location\}/goldengateDeployments/{goldengate_deployment\}. - */ - name?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Odbnetworks$Get; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$StopGoldengateDeploymentRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Projects$Locations$Goldengatedeploymenttypes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = + options.rootUrl || 'https://oracledatabase.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Lists GoldenGateDeploymentTypes in a given project and location. + * Lists the ODB Networks in a given project and location. * @example * ```js * // Before running the sample: @@ -18843,25 +21126,24 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await oracledatabase.projects.locations.goldengateDeploymentTypes.list({ - * // Optional. An expression for filtering the results of the request. Either the deployment_type and ogg_version fields must be specified in the format: `deployment_type="DATABASE_ORACLE"` or `ogg_version="version"`. Allowed values for deployment_type are: `DATABASE_ORACLE`, `BIGDATA`, `DATABASE_MICROSOFT_SQLSERVER`, `DATABASE_MYSQL`, `DATABASE_POSTGRESQL`, `DATABASE_DB2ZOS`, `DATABASE_DB2I`, `GGSA`, `DATA_TRANSFORMS`. - * filter: 'placeholder-value', - * // Optional. Hint for how to order the results - * orderBy: 'placeholder-value', - * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. The parent resource. Format: projects/{project\}/locations/{location\} - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = await oracledatabase.projects.locations.odbNetworks.list({ + * // Optional. An expression for filtering the results of the request. + * filter: 'placeholder-value', + * // Optional. An expression for ordering the results of the request. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 ODB Networks will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent value for the ODB Network in the following format: projects/{project\}/locations/{location\}. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "goldengateDeploymentTypes": [], * // "nextPageToken": "my_nextPageToken", + * // "odbNetworks": [], * // "unreachable": [] * // } * } @@ -18879,61 +21161,53 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, + params: Params$Resource$Projects$Locations$Odbnetworks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, + params?: Params$Resource$Projects$Locations$Odbnetworks$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; list( - params: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, + params: Params$Resource$Projects$Locations$Odbnetworks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, + params: Params$Resource$Projects$Locations$Odbnetworks$List, options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Odbnetworks$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Odbnetworks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List; + {}) as Params$Resource$Projects$Locations$Odbnetworks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List; + params = {} as Params$Resource$Projects$Locations$Odbnetworks$List; options = {}; } @@ -18947,7 +21221,7 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/goldengateDeploymentTypes').replace( + url: (rootUrl + '/v1/{+parent}/odbNetworks').replace( /([^:]\/)\/+/g, '$1' ), @@ -18962,49 +21236,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Goldengatedeploymenttypes$List extends StandardParameters { - /** - * Optional. An expression for filtering the results of the request. Either the deployment_type and ogg_version fields must be specified in the format: `deployment_type="DATABASE_ORACLE"` or `ogg_version="version"`. Allowed values for deployment_type are: `DATABASE_ORACLE`, `BIGDATA`, `DATABASE_MICROSOFT_SQLSERVER`, `DATABASE_MYSQL`, `DATABASE_POSTGRESQL`, `DATABASE_DB2ZOS`, `DATABASE_DB2I`, `GGSA`, `DATA_TRANSFORMS`. - */ - filter?: string; - /** - * Optional. Hint for how to order the results - */ - orderBy?: string; - /** - * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. The parent resource. Format: projects/{project\}/locations/{location\} - */ - parent?: string; - } - - export class Resource$Projects$Locations$Goldengatedeploymentversions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Lists GoldengateDeploymentVersions in a given project and location. + * Updates the `labels` and `service_connectivity_config` of a single OdbNetwork. * @example * ```js * // Before running the sample: @@ -19033,24 +21275,39 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await oracledatabase.projects.locations.goldengateDeploymentVersions.list({ - * // Optional. An expression for filtering the results of the request. Either the deployment_id and deployment_type fields must be specified in the format: `deployment_id="id"` or `deployment_type="DATABASE_ORACLE"`. - * filter: 'placeholder-value', - * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. Parent value for ListGoldengateDeploymentVersionsRequest Format: projects/{project\}/locations/{location\} - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = await oracledatabase.projects.locations.odbNetworks.patch({ + * // Identifier. The name of the OdbNetwork resource in the following format: projects/{project\}/locations/{region\}/odbNetworks/{odb_network\} + * name: 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * // Optional. A mask specifying which fields in the OdbNetwork should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "entitlementId": "my_entitlementId", + * // "gcpOracleZone": "my_gcpOracleZone", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "reconciling": false, + * // "serviceConnectivityConfig": {}, + * // "state": "my_state" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "goldengateDeploymentVersions": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -19066,62 +21323,52 @@ export namespace oracledatabase_v1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - list( - params: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, + patch( + params: Params$Resource$Projects$Locations$Odbnetworks$Patch, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, + patch( + params?: Params$Resource$Projects$Locations$Odbnetworks$Patch, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Odbnetworks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Goldengatedeploymentversions$List, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Odbnetworks$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Odbnetworks$Patch, + callback: BodyResponseCallback ): void; - list( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Goldengatedeploymentversions$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Odbnetworks$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback - | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Goldengatedeploymentversions$List; + {}) as Params$Resource$Projects$Locations$Odbnetworks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Goldengatedeploymentversions$List; + params = {} as Params$Resource$Projects$Locations$Odbnetworks$Patch; options = {}; } @@ -19135,39 +21382,74 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1/{+parent}/goldengateDeploymentVersions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Goldengatedeploymentversions$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Odbnetworks$Create extends StandardParameters { /** - * Optional. An expression for filtering the results of the request. Either the deployment_id and deployment_type fields must be specified in the format: `deployment_id="id"` or `deployment_type="DATABASE_ORACLE"`. + * Required. The ID of the OdbNetwork to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + */ + odbNetworkId?: string; + /** + * Required. The parent value for the OdbNetwork in the following format: projects/{project\}/locations/{location\}. + */ + parent?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$OdbNetwork; + } + export interface Params$Resource$Projects$Locations$Odbnetworks$Delete extends StandardParameters { + /** + * Required. The name of the resource in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Odbnetworks$Get extends StandardParameters { + /** + * Required. The name of the OdbNetwork in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Odbnetworks$List extends StandardParameters { + /** + * Optional. An expression for filtering the results of the request. */ filter?: string; /** - * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. The maximum value is 1000; values above 1000 will be coerced to 1000. + * Optional. An expression for ordering the results of the request. + */ + orderBy?: string; + /** + * Optional. The maximum number of items to return. If unspecified, at most 50 ODB Networks will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. */ pageSize?: number; /** @@ -19175,23 +21457,38 @@ export namespace oracledatabase_v1 { */ pageToken?: string; /** - * Required. Parent value for ListGoldengateDeploymentVersionsRequest Format: projects/{project\}/locations/{location\} + * Required. The parent value for the ODB Network in the following format: projects/{project\}/locations/{location\}. */ parent?: string; } + export interface Params$Resource$Projects$Locations$Odbnetworks$Patch extends StandardParameters { + /** + * Identifier. The name of the OdbNetwork resource in the following format: projects/{project\}/locations/{region\}/odbNetworks/{odb_network\} + */ + name?: string; + /** + * Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + */ + requestId?: string; + /** + * Optional. A mask specifying which fields in the OdbNetwork should be updated. A field specified in the mask is updated. If a mask isn't provided, the service treats this as an implied field mask equivalent to all fields that are populated (have a non-empty value). To clear or unset a field, the field must be explicitly specified in the `update_mask`. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$OdbNetwork; + } - export class Resource$Projects$Locations$Odbnetworks { + export class Resource$Projects$Locations$Odbnetworks$Odbdnszones { context: APIRequestContext; - odbSubnets: Resource$Projects$Locations$Odbnetworks$Odbsubnets; constructor(context: APIRequestContext) { this.context = context; - this.odbSubnets = new Resource$Projects$Locations$Odbnetworks$Odbsubnets( - this.context - ); } /** - * Creates a new ODB Network in a given project and location. + * Creates a new ODB DNS Zone in a given ODB Network. * @example * ```js * // Before running the sample: @@ -19220,28 +21517,28 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.odbNetworks.create({ - * // Required. The ID of the OdbNetwork to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. - * odbNetworkId: 'placeholder-value', - * // Required. The parent value for the OdbNetwork in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', + * const res = + * await oracledatabase.projects.locations.odbNetworks.odbDnsZones.create({ + * // Required. The ID of the OdbDnsZone to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * odbDnsZoneId: 'placeholder-value', + * // Required. The parent value for the OdbDnsZone in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. + * parent: + * 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "state": "my_state" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "domain": "my_domain", + * // "labels": {}, + * // "name": "my_name", + * // "state": "my_state" + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -19267,31 +21564,31 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ create( - params: Params$Resource$Projects$Locations$Odbnetworks$Create, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create, options: StreamMethodOptions ): Promise>; create( - params?: Params$Resource$Projects$Locations$Odbnetworks$Create, + params?: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create, options?: MethodOptions ): Promise>; create( - params: Params$Resource$Projects$Locations$Odbnetworks$Create, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Odbnetworks$Create, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; create( - params: Params$Resource$Projects$Locations$Odbnetworks$Create, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create, callback: BodyResponseCallback ): void; create(callback: BodyResponseCallback): void; create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Odbnetworks$Create + | Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -19306,12 +21603,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Odbnetworks$Create; + {}) as Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Odbnetworks$Create; + params = + {} as Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create; options = {}; } @@ -19325,7 +21623,7 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/odbNetworks').replace( + url: (rootUrl + '/v1/{+parent}/odbDnsZones').replace( /([^:]\/)\/+/g, '$1' ), @@ -19350,7 +21648,7 @@ export namespace oracledatabase_v1 { } /** - * Deletes a single ODB Network. + * Deletes a single ODB DNS Zone. * @example * ```js * // Before running the sample: @@ -19379,12 +21677,13 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.odbNetworks.delete({ - * // Required. The name of the resource in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. - * name: 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork', - * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). - * requestId: 'placeholder-value', - * }); + * const res = + * await oracledatabase.projects.locations.odbNetworks.odbDnsZones.delete({ + * // Required. The name of the resource in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}/odbDnsZones/{odb_dns_zone\}. + * name: 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork/odbDnsZones/my-odbDnsZone', + * // Optional. An optional ID to identify the request. This value is used to identify duplicate requests. If you make a request with the same request ID and the original request is still in progress or completed, 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). + * requestId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response @@ -19410,31 +21709,31 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Projects$Locations$Odbnetworks$Delete, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Projects$Locations$Odbnetworks$Delete, + params?: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Projects$Locations$Odbnetworks$Delete, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Odbnetworks$Delete, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Projects$Locations$Odbnetworks$Delete, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Odbnetworks$Delete + | Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -19449,12 +21748,13 @@ export namespace oracledatabase_v1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Odbnetworks$Delete; + {}) as Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Odbnetworks$Delete; + params = + {} as Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete; options = {}; } @@ -19490,7 +21790,7 @@ export namespace oracledatabase_v1 { } /** - * Gets details of a single ODB Network. + * Gets details of a single ODB DNS Zone. * @example * ```js * // Before running the sample: @@ -19519,20 +21819,19 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.odbNetworks.get({ - * // Required. The name of the OdbNetwork in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. - * name: 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork', - * }); + * const res = + * await oracledatabase.projects.locations.odbNetworks.odbDnsZones.get({ + * // Required. The name of the OdbDnsZone in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}/odbDnsZones/{odb_dns_zone\}. + * name: 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork/odbDnsZones/my-odbDnsZone', + * }); * console.log(res.data); * * // Example response * // { * // "createTime": "my_createTime", - * // "entitlementId": "my_entitlementId", - * // "gcpOracleZone": "my_gcpOracleZone", + * // "domain": "my_domain", * // "labels": {}, * // "name": "my_name", - * // "network": "my_network", * // "state": "my_state" * // } * } @@ -19550,51 +21849,52 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Odbnetworks$Get, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Odbnetworks$Get, + params?: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Odbnetworks$Get, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Odbnetworks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Odbnetworks$Get, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Odbnetworks$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - BodyResponseCallback | BodyResponseCallback + BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Odbnetworks$Get; + {}) as Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Odbnetworks$Get; + params = + {} as Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get; options = {}; } @@ -19620,17 +21920,17 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the ODB Networks in a given project and location. + * Lists all the ODB DNS Zones in a given ODB Network. * @example * ```js * // Before running the sample: @@ -19659,24 +21959,26 @@ export namespace oracledatabase_v1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await oracledatabase.projects.locations.odbNetworks.list({ - * // Optional. An expression for filtering the results of the request. - * filter: 'placeholder-value', - * // Optional. An expression for ordering the results of the request. - * orderBy: 'placeholder-value', - * // Optional. The maximum number of items to return. If unspecified, at most 50 ODB Networks will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. The parent value for the ODB Network in the following format: projects/{project\}/locations/{location\}. - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await oracledatabase.projects.locations.odbNetworks.odbDnsZones.list({ + * // Optional. An expression for filtering the results of the request. + * filter: 'placeholder-value', + * // Optional. An expression for ordering the results of the request. + * orderBy: 'placeholder-value', + * // Optional. The maximum number of items to return. If unspecified, at most 50 OdbDnsZones will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. The parent value for the OdbDnsZone in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. + * parent: + * 'projects/my-project/locations/my-location/odbNetworks/my-odbNetwork', + * }); * console.log(res.data); * * // Example response * // { * // "nextPageToken": "my_nextPageToken", - * // "odbNetworks": [], + * // "odbDnsZones": [], * // "unreachable": [] * // } * } @@ -19694,53 +21996,54 @@ export namespace oracledatabase_v1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$Odbnetworks$List, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$Odbnetworks$List, + params?: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Projects$Locations$Odbnetworks$List, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Odbnetworks$List, + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List, options: - MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$Odbnetworks$List, - callback: BodyResponseCallback + params: Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Odbnetworks$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Odbnetworks$List; + {}) as Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Odbnetworks$List; + params = + {} as Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List; options = {}; } @@ -19754,7 +22057,7 @@ export namespace oracledatabase_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+parent}/odbNetworks').replace( + url: (rootUrl + '/v1/{+parent}/odbDnsZones').replace( /([^:]\/)\/+/g, '$1' ), @@ -19769,23 +22072,23 @@ export namespace oracledatabase_v1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Projects$Locations$Odbnetworks$Create extends StandardParameters { + export interface Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Create extends StandardParameters { /** - * Required. The ID of the OdbNetwork to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. + * Required. The ID of the OdbDnsZone to create. This value is restricted to (^[a-z]([a-z0-9-]{0,61\}[a-z0-9])?$) and must be a maximum of 63 characters in length. The value must start with a letter and end with a letter or a number. */ - odbNetworkId?: string; + odbDnsZoneId?: string; /** - * Required. The parent value for the OdbNetwork in the following format: projects/{project\}/locations/{location\}. + * Required. The parent value for the OdbDnsZone in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. */ parent?: string; /** @@ -19796,11 +22099,11 @@ export namespace oracledatabase_v1 { /** * Request body metadata */ - requestBody?: Schema$OdbNetwork; + requestBody?: Schema$OdbDnsZone; } - export interface Params$Resource$Projects$Locations$Odbnetworks$Delete extends StandardParameters { + export interface Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Delete extends StandardParameters { /** - * Required. The name of the resource in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. + * Required. The name of the resource in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}/odbDnsZones/{odb_dns_zone\}. */ name?: string; /** @@ -19808,13 +22111,13 @@ export namespace oracledatabase_v1 { */ requestId?: string; } - export interface Params$Resource$Projects$Locations$Odbnetworks$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$Get extends StandardParameters { /** - * Required. The name of the OdbNetwork in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. + * Required. The name of the OdbDnsZone in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}/odbDnsZones/{odb_dns_zone\}. */ name?: string; } - export interface Params$Resource$Projects$Locations$Odbnetworks$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Odbnetworks$Odbdnszones$List extends StandardParameters { /** * Optional. An expression for filtering the results of the request. */ @@ -19824,7 +22127,7 @@ export namespace oracledatabase_v1 { */ orderBy?: string; /** - * Optional. The maximum number of items to return. If unspecified, at most 50 ODB Networks will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * Optional. The maximum number of items to return. If unspecified, at most 50 OdbDnsZones will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. */ pageSize?: number; /** @@ -19832,7 +22135,7 @@ export namespace oracledatabase_v1 { */ pageToken?: string; /** - * Required. The parent value for the ODB Network in the following format: projects/{project\}/locations/{location\}. + * Required. The parent value for the OdbDnsZone in the following format: projects/{project\}/locations/{location\}/odbNetworks/{odb_network\}. */ parent?: string; } diff --git a/src/apis/osconfig/v1.ts b/src/apis/osconfig/v1.ts index 29f60ad555..dd39ff0dbf 100644 --- a/src/apis/osconfig/v1.ts +++ b/src/apis/osconfig/v1.ts @@ -2532,7 +2532,7 @@ export namespace osconfig_v1 { * const res = await osconfig.projects.locations.instances.inventories.get({ * // Required. API resource name for inventory resource. Format: `projects/{project\}/locations/{location\}/instances/{instance\}/inventory` For `{project\}`, either `project-number` or `project-id` can be provided. For `{instance\}`, either Compute Engine `instance-id` or `instance-name` can be provided. * name: 'projects/my-project/locations/my-location/instances/my-instance/inventory', - * // Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. + * // Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. * view: 'placeholder-value', * }); * console.log(res.data); @@ -2669,15 +2669,15 @@ export namespace osconfig_v1 { * * // Do the magic * const res = await osconfig.projects.locations.instances.inventories.list({ - * // If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response. + * // Optional. If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response. * filter: 'placeholder-value', - * // The maximum number of results to return. + * // Optional. The maximum number of results to return. * pageSize: 'placeholder-value', - * // A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from. + * // Optional. A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from. * pageToken: 'placeholder-value', * // Required. The parent resource name. Format: `projects/{project\}/locations/{location\}/instances/-` For `{project\}`, either `project-number` or `project-id` can be provided. * parent: 'projects/my-project/locations/my-location/instances/my-instance', - * // Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. + * // Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. * view: 'placeholder-value', * }); * console.log(res.data); @@ -2793,21 +2793,21 @@ export namespace osconfig_v1 { */ name?: string; /** - * Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. + * Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. */ view?: string; } export interface Params$Resource$Projects$Locations$Instances$Inventories$List extends StandardParameters { /** - * If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response. + * Optional. If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response. */ filter?: string; /** - * The maximum number of results to return. + * Optional. The maximum number of results to return. */ pageSize?: number; /** - * A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from. + * Optional. A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from. */ pageToken?: string; /** @@ -2815,7 +2815,7 @@ export namespace osconfig_v1 { */ parent?: string; /** - * Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. + * Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. */ view?: string; } diff --git a/src/apis/osconfig/v1alpha.ts b/src/apis/osconfig/v1alpha.ts index 3038ea0fa2..c162a7a48e 100644 --- a/src/apis/osconfig/v1alpha.ts +++ b/src/apis/osconfig/v1alpha.ts @@ -2021,7 +2021,7 @@ export namespace osconfig_v1alpha { * const res = await osconfig.projects.locations.instances.inventories.get({ * // Required. API resource name for inventory resource. Format: `projects/{project\}/locations/{location\}/instances/{instance\}/inventory` For `{project\}`, either `project-number` or `project-id` can be provided. For `{instance\}`, either Compute Engine `instance-id` or `instance-name` can be provided. * name: 'projects/my-project/locations/my-location/instances/my-instance/inventory', - * // Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. + * // Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. * view: 'placeholder-value', * }); * console.log(res.data); @@ -2158,15 +2158,15 @@ export namespace osconfig_v1alpha { * * // Do the magic * const res = await osconfig.projects.locations.instances.inventories.list({ - * // If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response. + * // Optional. If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response. * filter: 'placeholder-value', - * // The maximum number of results to return. + * // Optional. The maximum number of results to return. * pageSize: 'placeholder-value', - * // A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from. + * // Optional. A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from. * pageToken: 'placeholder-value', * // Required. The parent resource name. Format: `projects/{project\}/locations/{location\}/instances/-` For `{project\}`, either `project-number` or `project-id` can be provided. * parent: 'projects/my-project/locations/my-location/instances/my-instance', - * // Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. + * // Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. * view: 'placeholder-value', * }); * console.log(res.data); @@ -2282,21 +2282,21 @@ export namespace osconfig_v1alpha { */ name?: string; /** - * Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. + * Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. */ view?: string; } export interface Params$Resource$Projects$Locations$Instances$Inventories$List extends StandardParameters { /** - * If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response. + * Optional. If provided, this field specifies the criteria that must be met by a `Inventory` API resource to be included in the response. */ filter?: string; /** - * The maximum number of results to return. + * Optional. The maximum number of results to return. */ pageSize?: number; /** - * A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from. + * Optional. A pagination token returned from a previous call to `ListInventories` that indicates where this listing should continue from. */ pageToken?: string; /** @@ -2304,7 +2304,7 @@ export namespace osconfig_v1alpha { */ parent?: string; /** - * Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. + * Optional. Inventory view indicating what information should be included in the inventory resource. If unspecified, the default view is BASIC. */ view?: string; } diff --git a/src/apis/paymentsresellersubscription/v1.ts b/src/apis/paymentsresellersubscription/v1.ts index d12bc1a2eb..1c5c653897 100644 --- a/src/apis/paymentsresellersubscription/v1.ts +++ b/src/apis/paymentsresellersubscription/v1.ts @@ -216,7 +216,7 @@ export namespace paymentsresellersubscription_v1 { */ export interface Schema$EntitleSubscriptionRequest { /** - * Optional. The line items to be entitled. If unspecified, all line items will be entitled. + * Optional. Deprecated: This field is no longer supported. All line items are entitled automatically. Optional. The line items to be entitled. If unspecified, all line items will be entitled. */ lineItemEntitlementDetails?: Schema$EntitleSubscriptionRequestLineItemEntitlementDetails[]; } diff --git a/src/apis/playdeveloperreporting/v1alpha1.ts b/src/apis/playdeveloperreporting/v1alpha1.ts index 288ff3eb0f..9610096eb0 100644 --- a/src/apis/playdeveloperreporting/v1alpha1.ts +++ b/src/apis/playdeveloperreporting/v1alpha1.ts @@ -586,7 +586,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. * Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. * Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -632,7 +632,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000. */ pageSize?: number | null; /** @@ -678,7 +678,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -724,7 +724,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000. */ pageSize?: number | null; /** @@ -770,7 +770,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -812,7 +812,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -858,7 +858,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000. */ pageSize?: number | null; /** @@ -904,7 +904,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -950,7 +950,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -996,7 +996,7 @@ export namespace playdeveloperreporting_v1alpha1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** diff --git a/src/apis/playdeveloperreporting/v1beta1.ts b/src/apis/playdeveloperreporting/v1beta1.ts index e4a7e9ca0e..5656edb5bd 100644 --- a/src/apis/playdeveloperreporting/v1beta1.ts +++ b/src/apis/playdeveloperreporting/v1beta1.ts @@ -586,7 +586,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. * Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. * Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -632,7 +632,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000. */ pageSize?: number | null; /** @@ -678,7 +678,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -724,7 +724,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000. */ pageSize?: number | null; /** @@ -770,7 +770,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -812,7 +812,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -858,7 +858,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100,000; values above 100,000 will be coerced to 100,000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10,000; values above 10,000 will be coerced to 10,000. */ pageSize?: number | null; /** @@ -904,7 +904,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -950,7 +950,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** @@ -996,7 +996,7 @@ export namespace playdeveloperreporting_v1beta1 { */ metrics?: string[] | null; /** - * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 100000; values above 100000 will be coerced to 100000. + * Optional. Maximum size of the returned data. If unspecified, at most 1000 rows will be returned. The maximum value is 10000; values above 10000 will be coerced to 10000. */ pageSize?: number | null; /** diff --git a/src/apis/run/v2.ts b/src/apis/run/v2.ts index 4349fcbfc5..4da8787218 100644 --- a/src/apis/run/v2.ts +++ b/src/apis/run/v2.ts @@ -124,6 +124,19 @@ export namespace run_v2 { } } + /** + * Configuration for Ambient Networking. + */ + export interface Schema$GoogleCloudRunV2AmbientNetworking { + /** + * The ambient networking scope of the instance. + */ + ambientScope?: string | null; + /** + * Optional. Whether ambient networking is enabled. + */ + enabled?: boolean | null; + } /** * Settings for Binary Authorization feature. */ @@ -1321,6 +1334,10 @@ export namespace run_v2 { * A Revision is an immutable snapshot of code and configuration. A Revision references a container image. Revisions are only created by updates to its parent Service. */ export interface Schema$GoogleCloudRunV2Revision { + /** + * Output only. The ambient networking configuration for this revision. + */ + ambientNetworking?: Schema$GoogleCloudRunV2AmbientNetworking; /** * Output only. Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. */ @@ -1504,6 +1521,10 @@ export namespace run_v2 { * RevisionTemplate describes the data a revision should have when created from a template. */ export interface Schema$GoogleCloudRunV2RevisionTemplate { + /** + * Optional. The ambient networking configuration for this revision. + */ + ambientNetworking?: Schema$GoogleCloudRunV2AmbientNetworking; /** * Optional. Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with `run.googleapis.com`, `cloud.googleapis.com`, `serving.knative.dev`, or `autoscaling.knative.dev` namespaces, and they will be rejected. All system annotations in v1 now have a corresponding field in v2 RevisionTemplate. This field follows Kubernetes annotations' namespacing, limits, and rules. */ @@ -2833,6 +2854,10 @@ export namespace run_v2 { * Optional. Option to specify the Pub/Sub topic to receive build status updates. */ pubsubTopic?: string | null; + /** + * Optional. Ranked list (earlier items have higher priority) of Machine Series to consider when provisioning Worker VMs. A concrete machine type will be selected based on machine availability in the given region. This field must be empty for the Build to be eligible to be paired with a pre-provisioned worker VM. + */ + rankedMachineSeries?: string[] | null; /** * Requested verifiability options. */ @@ -11845,6 +11870,7 @@ export namespace run_v2 { * * // Example response * // { + * // "ambientNetworking": {}, * // "annotations": {}, * // "client": "my_client", * // "clientVersion": "my_clientVersion", @@ -14033,6 +14059,7 @@ export namespace run_v2 { * * // Example response * // { + * // "ambientNetworking": {}, * // "annotations": {}, * // "client": "my_client", * // "clientVersion": "my_clientVersion", diff --git a/src/apis/sqladmin/v1.ts b/src/apis/sqladmin/v1.ts index 18ac259c2d..938243f2af 100644 --- a/src/apis/sqladmin/v1.ts +++ b/src/apis/sqladmin/v1.ts @@ -3445,11 +3445,11 @@ export namespace sqladmin_v1 { startWorkloadCaptureContext?: Schema$StartWorkloadCaptureContext; } /** - * Request to stop executing a captured workload on a replay instance. + * Request to stop an active workload replay on a target Cloud SQL replay instance. */ export interface Schema$SqlWorkloadCapturesStopReplayRequest { /** - * Required. Contains details about the stop workload replay operation. + * Optional. Contains details about the stop workload replay operation. If omitted, default values are used. */ stopWorkloadReplayContext?: Schema$StopWorkloadReplayContext; } @@ -3625,18 +3625,9 @@ export namespace sqladmin_v1 { abortLiveReplay?: boolean | null; } /** - * The context for the `StopWorkloadReplay` operation, which contains details about stopping the execution of a captured workload (recorded read and write SQL queries) on a replay instance. + * The context for the `StopWorkloadReplay` operation, which represents an operation that stops an active workload replay on a target Cloud SQL replay instance. */ - export interface Schema$StopWorkloadReplayContext { - /** - * Required. The name of the Cloud SQL instance where the captured workload (SQL queries) is being executed, excluding the project ID (for example, `my-replay-instance`). The instance name must start with a lowercase letter and contain only lowercase letters, numbers, and hyphens. The combined length of `project-ID:instance-name` must be 98 characters or less. - */ - replayInstance?: string | null; - /** - * Output only. The ID of the workload to stop executing on the replay instance. Each workload capture generates a unique ID in the format `workload-` (for example, `workload-1786046400`). Use this ID to stop executing the recorded SQL queries. - */ - workloadId?: string | null; - } + export interface Schema$StopWorkloadReplayContext {} /** * Request message for switching over a `BlueGreenDeployment` resource. */ @@ -19437,7 +19428,7 @@ export namespace sqladmin_v1 { } /** - * Stops executing a captured workload on the separate Cloud SQL instance. + * Stops an active workload replay on the target Cloud SQL replay instance. * @example * ```js * // Before running the sample: @@ -19470,12 +19461,10 @@ export namespace sqladmin_v1 { * * // Do the magic * const res = await sql.workloadCaptures.stopReplay({ - * // Required. Cloud SQL instance ID. This does not include the project ID. + * // Required. Cloud SQL instance ID of the target replay instance. This does not include the project ID. * instance: 'placeholder-value', - * // Required. Project ID of the project that contains the instance. + * // Required. Project ID of the project that contains the target replay instance. * project: 'placeholder-value', - * // Required. The ID of the workload to replay. - * workloadId: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -19588,7 +19577,7 @@ export namespace sqladmin_v1 { { url: ( rootUrl + - '/v1/projects/{project}/instances/{instance}/workloadCaptures/{workloadId}:stopReplay' + '/v1/projects/{project}/instances/{instance}/workloadCaptures:stopReplay' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -19596,8 +19585,8 @@ export namespace sqladmin_v1 { options ), params, - requiredParams: ['project', 'instance', 'workloadId'], - pathParams: ['instance', 'project', 'workloadId'], + requiredParams: ['project', 'instance'], + pathParams: ['instance', 'project'], context: this.context, }; if (callback) { @@ -19672,17 +19661,13 @@ export namespace sqladmin_v1 { } export interface Params$Resource$Workloadcaptures$Stopreplay extends StandardParameters { /** - * Required. Cloud SQL instance ID. This does not include the project ID. + * Required. Cloud SQL instance ID of the target replay instance. This does not include the project ID. */ instance?: string; /** - * Required. Project ID of the project that contains the instance. + * Required. Project ID of the project that contains the target replay instance. */ project?: string; - /** - * Required. The ID of the workload to replay. - */ - workloadId?: string; /** * Request body metadata diff --git a/src/apis/travelimpactmodel/v1.ts b/src/apis/travelimpactmodel/v1.ts index b65cbbe3df..98d927f81d 100644 --- a/src/apis/travelimpactmodel/v1.ts +++ b/src/apis/travelimpactmodel/v1.ts @@ -543,7 +543,7 @@ export namespace travelimpactmodel_v1 { */ destination?: string | null; /** - * Optional. Distance in kilometers, e.g. `2423`, from [1, 2.5e16) km. This is used to match a flight to distance-based emissions when origin and destination are not provided or there are no matching typical flights. + * Optional. Distance in kilometers, e.g. `2423`, from [`1`, `1e12`) km. This is used to match a flight to distance-based emissions when origin and destination are not provided or there are no matching typical flights. */ distanceKm?: string | null; /** diff --git a/src/apis/workstations/v1beta.ts b/src/apis/workstations/v1beta.ts index aed9efa29b..05b5e20f21 100644 --- a/src/apis/workstations/v1beta.ts +++ b/src/apis/workstations/v1beta.ts @@ -310,6 +310,10 @@ export namespace workstations_v1beta { * Configuration options for Cluster HTTP Gateway. */ export interface Schema$GatewayConfig { + /** + * Optional. Specifies VM ports that can be accessed using the standard `$HOSTNAME:$PORT` format in addition to the service's default `$PORT-$HOSTNAME` format. See [Access HTTP Servers Running on Workstations] (https://docs.cloud.google.com/workstations/docs/access-http-servers-running-on-workstations). Note: This only controls the routing URL format. Network-level access is still controlled by `allowed_ports` on WorkstationConfig. All `allowed_ports` remain accessible via the default `$PORT-$HOSTNAME` format. + */ + directAccessPorts?: number[] | null; /** * Optional. Whether HTTP/2 is enabled for this workstation cluster. Defaults to false. */ diff --git a/src/index.ts b/src/index.ts index 2cb03f0899..a1b58c395b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -264,6 +264,7 @@ export {displayvideo_v1dev} from './apis/displayvideo/v1dev'; export {displayvideo_v2} from './apis/displayvideo/v2'; export {displayvideo_v3} from './apis/displayvideo/v3'; export {displayvideo_v4} from './apis/displayvideo/v4'; +export {displayvideo_v5} from './apis/displayvideo/v5'; export {dlp_v2} from './apis/dlp/v2'; export {dns_v1} from './apis/dns/v1'; export {dns_v1beta2} from './apis/dns/v1beta2';